r - 根据特定列用其他值填充数据框列
问题描述
我的dataframe
样子:
我尝试添加一个新列并用每行的列号值(间隔 + 3)填充它。
例如,如果intervals = 3
,我想获得DF[,3+3]
我试过这个,但它没有用:
DF$new_col <- DF[,DF$intervals[]+3]
解决方案
尽管从问题中对问题的描述并不完全清楚。for
如果它解决了您的查询,仍然检查以下基于循环的解决方案。请注意,由于没有提供可重现的数据,因此我为此目的生成了一个虚拟数据。
> df<-data.frame(D1=c(2,8,1,5,2),D2=c(7,3,5,6,8),D3=c(9,6,4,1,0),D4=c(12,20,61,80,91),Interval=c(1,2,1,0,1))
> df
D1 D2 D3 D4 Interval
1 2 7 9 12 1
2 8 3 6 20 2
3 1 5 4 61 1
4 5 6 1 80 0
5 2 8 0 91 1
> for (i in 1:nrow(df)){
+ df[i,6]<-df[i,df$Interval[i]+3]
+ }
> df
D1 D2 D3 D4 Interval V6
1 2 7 9 12 1 12
2 8 3 6 20 2 2
3 1 5 4 61 1 61
4 5 6 1 80 0 1
5 2 8 0 91 1 91
推荐阅读
- javascript - 使用 JSXgraph 制作平面动力系统
- npm - Npm Sass 警告
- reactjs - 本地机器和 CodeSandbox 之间的 React 错误消息不同
- c# - 你如何制作一个倒数计时器(包括毫秒分钟和秒)c#
- python - 将列表附加到列表列表
- reactjs - 如何在任何.scss 文件中使用tailwind 的@apply 指令,而不是仅使用它的主tailwind 文件(在React 中)?
- angular - HTML 中的 Angular 2+ 组件文档预览
- apache-spark - 使用pyspark同时进行聚合和特征提取
- firebase - 安装:无法处理请求。离线申请。firebase 的(安装/应用离线)错误
- android - ImageView 不会替换之前在 RecyclerView Adapter 中使用的 Drawable