同样的代码,为什么不同的数据会出现错误,怎么解决这个问题:Error in $<-.data.frame
(*tmp*
, Year, value = integer(0)) :
替换数据里有0行,但数据有186
Error in `$<-.data.frame`(`*tmp*`, Year, value = integer(0))
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
- 「已注销」 2023-04-11 14:22关注
以下内容部分参考ChatGPT模型:
这个错误是因为你在尝试替换一个数据框中的列,但是替换的值为0行,导致出现错误。这可能是因为你的替换数据没有正确地匹配到原始数据框中的行。你可以先检查一下替换数据框和原始数据框的行数是否匹配,或者尝试使用merge函数将两个数据框按照指定的列合并起来,然后再进行替换操作。
例如,假设原始数据框为df1,包含Year和Value两列,替换数据框为df2,也包含Year和Value两列。你可以使用如下代码将两个数据框按照Year列合并起来:
merged_df <- merge(df1, df2, by = "Year", all.x = TRUE)
这会将df1和df2按照Year列合并起来,并将结果保存在merged_df中。参数all.x = TRUE表示保留df1中所有的行,即使在df2中没有匹配到对应的行。然后,你可以使用如下代码替换merged_df中的Value列:
merged_df$Value.x[!is.na(merged_df$Value.y)] <- merged_df$Value.y[!is.na(merged_df$Value.y)]
这会将merged_df中Value.x列的值替换为Value.y列的值,但只会替换那些在Value.y列中不为NA的行。最后,你可以将替换后的结果保存回原始数据框中:
df1$Value <- merged_df$Value.x
这样就完成了替换操作。
如果我的建议对您有帮助、请点击采纳、祝您生活愉快
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用 6
悬赏问题
- ¥15 下图接收小电路,谁知道原理
- ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
- ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
- ¥15 手机接入宽带网线,如何释放宽带全部速度
- ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
- ¥15 ETLCloud 处理json多层级问题
- ¥15 matlab中使用gurobi时报错
- ¥15 这个主板怎么能扩出一两个sata口
- ¥15 不是,这到底错哪儿了😭
- ¥15 2020长安杯与连接网探