我有一个这样的数据框:
Vehicle Driver Distance Fuel.Consumption
W01 Alex 22.31 0.58
W01 Alex 93.21 2.48
W02 Brian 122.72 3.22
W02 Brian 22.25 0.5
......
Run Code Online (Sandbox Code Playgroud)
我想要这样的输出:
Vehicle Driver Distance Fuel.Consumption Fuel.Efficiency
W01 Alex 115.52 3.06 37.75
W02 Brian 144.97 3.72 38.97
......
Run Code Online (Sandbox Code Playgroud)
只需将每辆车的距离和 Fuel.Consumption 相加并计算每辆车的 Fuel.Efficiency。我试过了aggregate(),但它不像我想象的那样工作:
aggregate(Distance~Vehicle, df, FUN=sum)
Run Code Online (Sandbox Code Playgroud) 我的数据集中有一列包含格式的时间00:20:10.我有两个问题.首先,当我将其导入R使用时read.xlsx2(),此列将转换为因子类型.如何将其转换为时间类型?其次,我想以分钟数计算每个人的总时间.
ID Time
1 00:10:00
1 00:21:30
2 00:30:10
2 00:04:10
Run Code Online (Sandbox Code Playgroud)
我想要的输出是:
ID Total.time
1 31.5
2 34.3
Run Code Online (Sandbox Code Playgroud)
我以前没有处理时间问题,我希望有人也会推荐一些包.
我很好奇如何解决这个问题.我有这样的数据框:
a b
1 0
1 0
0 1
1 1
0 0
1 0
Run Code Online (Sandbox Code Playgroud)
然后输出有一个基于"a"和"b"值的额外列:
if(a == 1&b == 1)c = 1,if(a == 1&b == 0)c = 2,if(a == 0&b == 1)c = 3,否则c = 4.
a b c
1 0 2
1 0 2
0 1 3
1 1 1
0 0 4
1 0 2
Run Code Online (Sandbox Code Playgroud)
有什么想法吗?我不用嵌套的if-else写一个for循环,我们怎么去vectorize?谢谢!
我有这样的数据框,称为df:
a b c d e f
b c f a a a
d f a b c c
f e d f f d
Run Code Online (Sandbox Code Playgroud)
第一行实际上是列名.让我们举个例子来解释这里的含义是:df[1,1]是b的,这意味着存在从关系a到b,所以在列中的值意味着从"列名",以该条目关系.
我想创建一个matrix(df1)6*6维,列和行名都是列名df.如果从"i"到"j"之间存在关系,则(i,j)条目为1,否则为0.
我想要的输出是:
a b c d e f
a 0 1 0 1 0 1
b 0 0 1 0 1 1
c 1 0 0 1 0 1
d 1 1 0 0 0 1
e 1 0 1 …Run Code Online (Sandbox Code Playgroud)