平均每日发帖数你好,
我正在为大学写一篇论文,想找出特朗普平均每天发帖的频率。但我需要的不是所有数据的平均值,而是自 2016 年以来每天的平均发帖频率(数据来自 2016 年至 2020 年)。换句话说,我想创建一个新列,其中每一行显示当天的平均发帖频率。示例如下图所示。
日期.png
例子:
2016年1月4日 - 5篇帖子
2016年1月5日 - 9篇帖子
2016年1月6日 - 4篇帖子
这能在JMP中实现吗?
我遇到的另一个问题是,我无法将一个数据文件中的列复制到另一个数据文件中。
关闭.png
它只显示点数,而不是数字。
我知道我问的问题很多,但如果有人能帮帮我,我将不胜感激。
消费者和市场研究数据融合与清理实验设计回复:平均每天的帖子不要关心行的正确顺序和相应的日期,
我强烈建议让 JMP 关心:我会在两个表中定义适当的 ID,例如日期,
然后连接数据(连接表,或使用符号链接等)。
回复:平均每天的帖子这是对您找到的代码的简单修改,从数据表的最后 5 行开始,向后工作,在每 5 行添加 2 行
Names Default To Here( 1 );
dt = Current Data Table();
whereToAdd = Floor( N Rows( dt ) / 5 ) * 5;
For( i = whereToAdd, i >= 1, i = i - 5,
dt << Add Rows( 2, after( i ) )
);
回复:平均每天的帖子一个小问题出现了。 两个表之间的日期不对应。 这意味着当我将该列复制粘贴到新表中时,它与它应该用于的数据不匹配。 我试着寻找如何在每 5 行之后添加 2 行,我从“帮助”菜单中找到了这个:
Names Default To Here( 1 );
dt = Open( "$Desktop/2016-2020.jmp" );
dt << Add Rows( 2, after( 5 ) );
但是,该公式只在第 5 行之后添加 2 行,我需要它在每第 5 行之后添加它。
因此它会在第 5、10、15 之后添加 2 行,依此类推。
回复:平均每天的帖子谢谢@txnelson ,你是对的,“天”行不通,
但正如您所指出的那样,在该数字日期/时间列上单击鼠标右键还有一个快捷方式“日期”,这将弹出一个新列作为 col stats 的列。
回复:平均每天的帖子@乔治,我不相信你的建议会奏效。Day 函数返回月中的第几天 (1-31),而不是日期/时间的日期部分。
回复:平均每天的帖子- 您的日期列似乎已作为字符串输入,而不是 JMP 日期/时间值。首选的做法是将列转换为数字、日期/时间值。 要更改为数字、数据/时间,请执行以下操作:
- 双击列标题以显示“列信息”窗口。
- 将数据类型从字符更改为数字
- 将建模类型从标称更改为连续
- 单击格式的向下箭头,然后选择时间=>yyyy-mm-ddThh:mm:ss
- 单击应用。该列现在应转换为自 1904 年 1 月 1 日午夜以来的秒数,并将使用 yyyy-mm-ddThh:mm:ss 显示
- 现在要计算每天的推文数量,首先需要创建一个新列,它只是日期列的日期部分,其中包含当天的日期和时间。要创建该列,请执行以下操作:
- 单击 Cols 下拉菜单并选择 New Columns,这将打开 Column Info 窗口。
- 输入您要为其提供的列名称
- 将格式更改为 mm/dd/yyyy
- 单击列属性并选择公式
- 输入以下公式 Informat( Short Date( :Column 1 ), "mm/dd/yyyy" )
- 点击确定
- 再次点击确定
- 您现在有一列只包含日期
- 要计算每天的计数,请转至表格下拉菜单并选择摘要。在摘要对话框中执行以下操作:
- 选择刚刚创建的列,然后单击 Group 按钮将列移动到 Group 选择区域。
- 在新列仍处于选中状态的情况下,单击“统计”按钮并选择“N”
- 点击确定
- 将创建一个新表,其中包含每天的总计数
关于你的第二个问题,你需要做的就是将一列从一个表复制到另一个表,就是
- 单击列标题,
- 转到“编辑”下拉菜单并选择“使用列名复制”。
- 转到要将列复制到的数据表,然后双击数据表中最后一列之后的标题区域
- 转到数据表的“编辑”下拉菜单,然后选择“使用列名粘贴”
回复:平均每天的帖子对于按天计算的平均值,您可以将“col mean”函数与 by 变量一起使用。
首先从您的日期创建一个包含日期的新列(上下文菜单,新公式列 --> 日期 --> 日)。
然后用“col mean(:date, :day)”创建公式列。
要从不同的表中加入另一列,您需要定义一个唯一的键,以便有一个明确的规则。 这也可以是行号。