我想在另一行的同一列中引用一个值.我有一栏有开始和停止时刻.我想添加一个列,指示机器是否正在运行.
这是数据的样子:
c("", "", "start", "", "", "stop", "", "", "start", "stop", "")
Run Code Online (Sandbox Code Playgroud)
输出应如下所示:
[1,] "" ""
[2,] "" ""
[3,] "start" "running"
[4,] "" "running"
[5,] "" "running"
[6,] "stop" "running"
[7,] "" ""
[8,] "" ""
[9,] "start" "running"
[10,] "stop" "running"
[11,] "" ""
Run Code Online (Sandbox Code Playgroud)
在第二栏中我想做:
我怎么能用R优雅地做到这一点?
非常感谢您提前输入!
我想计算一个数组的子集组中的项数大于R中该数组中的特定值.参见下面的示例,每年都有一个外部基准,它是给定数据的一部分(这个不是数据集的平均值).对于给出一年基准的每一行,我想添加一列,其中重量大于基准的男性数量; 并且一列的女性数量大于基准.
> MyData
year type weight DesiredOutput1 DesiredOutput2
1 1990 Female 78 NA NA
2 1990 Male 74 NA NA
3 1990 Female 80 NA NA
4 1990 Male 90 NA NA
5 1990 Male 94 NA NA
6 1990 Male 70 NA NA
7 1990 Female 65 NA NA
8 1990 Female 61 NA NA
9 1990 benchmark 78 4 1
10 1990 Female 71 NA NA
11 1990 Male 91 NA NA
12 1990 Female 70 NA …Run Code Online (Sandbox Code Playgroud) 我想在我的表中添加一列,该列将值与现有列“农场”中的先前值进行比较(以检查其是否相同);并且还控制当前行中的值是否为“ NULL”。目的是当该行的“农场”列中的值与“农场”列的上一行中的值不同时,在新的列“切换”中取回值“ new”。(例如,当服务器场中的值为“ NULL”时,我想返回“”)
请参阅以下所需的输出:
farm switch
A
A
NULL
B new
B
B
A new
A
A
B new
B
B
NULL
A new
A
Run Code Online (Sandbox Code Playgroud)
我尝试使用以下代码解决此问题:
#To add a new column switch
MyData["switch"] <- NA
#To check if the value is different from the previous row; and if the value is different from NULL
MyData$switch <- ifelse((MyData$farm == lag(MyData$farm))||MyData$farm=="NULL","",MyData$farm)
Run Code Online (Sandbox Code Playgroud)
但是,当我使用此代码时,添加的列只有空值吗?有人可以澄清我做错了什么,并通过可能有效的代码帮助我吗?
我想将 XML 文件转换为数据框。我发现了一些允许我读取 XML 数据的函数,但是我无法获得与初始 XML 文件具有相同结构的数据框(= 如果您在 Excel 中打开 XML 文件将获得的结构)。
这是我的原始 XML 代码:
<Data>
<Frame timestamp='17/09/2014 20:55:00.902' timecode='75299902' >
<Object type='Taxi' DISTANCE='3037' VOLUME='1668' id='15593' code='0' />
<Object type='Taxi' DISTANCE='3605' VOLUME='931' id='15603' code='4' />
<Object type='Bus' DISTANCE='3563' VOLUME='488' id='15604' code='9' />
<Object type='Taxi' DISTANCE='4942' VOLUME='57' id='15624' code='1' />
<Object type='Taxi' DISTANCE='784' VOLUME='47' id='15625' code='10' />
<Object type='Taxi' DISTANCE='3301' VOLUME='2041' id='15626' code='42' />
<Object type='Bus' DISTANCE='2040' VOLUME='2945' id='15630' code='27' />
<Object type='Airplane' DISTANCE='2865' VOLUME='2722' Z='0' />
</Frame>
<TrackingFrame timestamp='17/09/2014 20:54:59.771' …Run Code Online (Sandbox Code Playgroud)