R 如何添加具有不同行数的列?

R 如何添加具有不同行数的列?,r,dataframe,vector,R,Dataframe,Vector,我正在计算R中的返回值,并试图将其添加到当前使用的数据帧中,但由于行数不同,它不起作用,因为现有行数为194,分配的数据有193行 此代码在单独执行时工作正常: diff(log(capm$price_Ford)) 但当我试图将它作为自己的列分配到数据帧中时,我得到了一个错误 capm$ford_ret <- diff(log(capm$price_Ford)) capm$ford\u ret 如何将193行的数据分配给194行的数据帧 简而言之,你不能。表中的每列必须具有相同的行数。

我正在计算R中的返回值,并试图将其添加到当前使用的数据帧中,但由于行数不同,它不起作用,因为现有行数为194,分配的数据有193行

此代码在单独执行时工作正常:

diff(log(capm$price_Ford))
但当我试图将它作为自己的列分配到数据帧中时,我得到了一个错误

capm$ford_ret <- diff(log(capm$price_Ford))
capm$ford\u ret
如何将193行的数据分配给194行的数据帧

简而言之,你不能。表中的每列必须具有相同的行数。您需要决定在缺少值的行中填充什么。根据您的用例,这可能是例如
0
NA
。您还需要决定丢失的值是在开始还是在结束时(对于差异,通常在开始时)。例如:

capm$ford_ret <- c(NA, diff(log(capm$price_Ford)))
capm$ford\u ret
如何将193行的数据分配给194行的数据帧

简而言之,你不能。表中的每列必须具有相同的行数。您需要决定在缺少值的行中填充什么。根据您的用例,这可能是例如
0
NA
。您还需要决定丢失的值是在开始还是在结束时(对于差异,通常在开始时)。例如:

capm$ford_ret <- c(NA, diff(log(capm$price_Ford)))
capm$ford\u ret