我正在尝试对以下数据进行以下计算
Class Returns_Jan_18 Returns_Feb_18 Assets_Jan_18 Assets_Feb_18
zxc1 3 NaN 150 153
zc2 5 NaN 30 60
2343 NaN -7 8 NA
4zcz NaN 2 NA 80
zxcEd 2 1 2 60
asset_column <-grep("^Assets_", names(df1))
return_column <-grep("^Returns_", names(df1))
colSums(df1[asset_column], na.rm = TRUE)
df1[asset_column]/colSums(df1[asset_column], na.rm = TRUE)
上面的代码工作正常。但是,我尝试以下方法
(df1[asset_column]/colSums(df1[asset_column], na.rm = TRUE) * df1[return_column])
我收到以下错误 “ *”仅适用于大小相等的数据帧
我不确定为什么-我认为这可能与NaN有关,因为全局环境窗口中显示以下内容?但是我不确定。
return_column integer(empty)