如何将R数据帧中的列增加一

  • 本文关键字:增加 数据帧 r
  • 更新时间 :
  • 英文 :


所以我有这样的数据

Date    DJIA Time
1     1/1/96 5117.12    1
2     1/2/96 5177.45    2
3     1/3/96 5194.07    3
4     1/4/96 5173.84    4
5     1/5/96 5181.43    5
6     1/8/96 5197.68    6

我想将"时间"列中的值递减1,并删除第一行。

我已经分别完成了这两个步骤-

data[-1,]

删除第一行,而

data$Time - 1 

递减,但返回递减的列。

我该怎么做才能得到这样的

Date    DJIA Time
1     1/2/96 5177.45    1
2     1/3/96 5194.07    2
3     1/4/96 5173.84    3
4     1/5/96 5181.43    4
5     1/8/96 5197.68    5

我也试过

data[-1,]$Time - 1 

但这再次只返回递减1的时间向量,而不是改变整个数据帧。

这是正确的:

data[-1,]
data$Time - 1

但是,正如您所说,它返回一个新的数据帧;它不会改变你已经拥有的东西。所以您只需要将结果分配回data:

data <- data[-1,]
data$Time <- data$Time - 1

为了更好地理解,您可以执行newData <- data[-1,]创建一个不包含第一行的新数据帧。如果要转换原始数据帧,则需要将其重新指定为data <- ...。列或行也是如此,您需要执行data$column <- ...

最新更新