楼主: ChloeYye
27157 14

[问答] R语言,如何循环提取数据框中的列 [推广有奖]

  • 0关注
  • 1粉丝

等待验证会员

大专生

51%

还不是VIP/贵宾

-

威望
0
论坛币
797 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
388 点
帖子
32
精华
0
在线时间
45 小时
注册时间
2016-12-13
最后登录
2021-6-29

楼主
ChloeYye 发表于 2018-10-26 14:48:03 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
求问R语言如何循环抽取数据框的每一列。
我需要每次抽一列出来,然后对列数据进行相关操作,总共要抽48次,不知道循环怎么写
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:行相关

数据框.png (48.58 KB)

数据框

数据框

沙发
Whig 在职认证  发表于 2018-10-26 14:54:18
lapply?写个for循环也可以吧

藤椅
ChloeYye 发表于 2018-10-26 15:08:47
Whig 发表于 2018-10-26 14:54
lapply?写个for循环也可以吧
你好,能大概说一下怎么写吗?我不太会,提取出的每一列要进入下一个循环进行数据处理。

板凳
Whig 在职认证  发表于 2018-10-26 15:37:31
ChloeYye 发表于 2018-10-26 15:08
你好,能大概说一下怎么写吗?我不太会,提取出的每一列要进入下一个循环进行数据处理。
for(n in names(df)) {
  df[[n]]
}
这种?

报纸
ChloeYye 发表于 2018-10-26 15:45:42
Whig 发表于 2018-10-26 15:37
for(n in names(df)) {
  df[[n]]
}
那怎么调用提取出的列呢?
for(j in 1:6){
  assign(paste("cjl", 48*(j-1)+1, sep = ""),y[j:(722+j),1])
}
这个是提取出来的数据处理,y[j:(722+j),1]应该是数据框中的每一列

地板
Whig 在职认证  发表于 2018-10-26 15:48:28
ChloeYye 发表于 2018-10-26 15:45
那怎么调用提取出的列呢?
for(j in 1:6){
  assign(paste("cjl", 48*(j-1)+1, sep = ""),y[j:(722+j), ...
y[j:(722+j),1]是从第j行到772+j行,第1列吧
已有 1 人评分论坛币 收起 理由
cheetahfly + 10 热心帮助其他会员

总评分: 论坛币 + 10   查看全部评分

7
ChloeYye 发表于 2018-10-26 15:56:01
Whig 发表于 2018-10-26 15:48
y[j:(722+j),1]是从第j行到772+j行,第1列吧
是的,对数据框每一列都要这样抽取数据

8
Whig 在职认证  发表于 2018-10-26 16:07:33
ChloeYye 发表于 2018-10-26 15:56
是的,对数据框每一列都要这样抽取数据
不太理解,用列名或者列序号取数据有什么困难么?

9
ChloeYye 发表于 2018-10-26 16:12:50
Whig 发表于 2018-10-26 16:07
不太理解,用列名或者列序号取数据有什么困难么?
对,想用列名提取出数据框的数据,然后对每一列进行相同的数据操作。所以使用循环语句。

10
ChloeYye 发表于 2018-10-26 16:13:56
Whig 发表于 2018-10-26 15:48
y[j:(722+j),1]是从第j行到772+j行,第1列吧
这块的第一列,需要循环到48,因为48个列都要进行这样的操作

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-2-8 04:18