楼主: 麻烦and纠结
7448 12

[问答] R语言data.frame [推广有奖]

  • 0关注
  • 0粉丝

本科生

55%

还不是VIP/贵宾

-

威望
0
论坛币
8 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
479 点
帖子
73
精华
0
在线时间
46 小时
注册时间
2013-10-16
最后登录
2015-4-3

楼主
麻烦and纠结 发表于 2013-11-7 11:19:30 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
现在要把数据的第一行设置成列名,我是把第一行删掉 然后在对列名进行命名,有没有简单点的方法,直接把第一行转化成列名
  1. tx<-read.table("00.txt", header=FALSE)
  2. ty<-t(tx)
  3. tz<-as.data.frame(ty)
复制代码
  1.       V1  V2  V3  V4        V5
  2. V1    x1  x2  x3  x4   Species
  3. V2   5.1 3.5 1.4 0.2    setosa
  4. V3   4.9   3 1.4 0.2    setosa
  5. V4   4.7 3.2 1.3 0.2    setosa
  6. V5   4.6 3.1 1.5 0.2    setosa
  7. V6     5 3.6 1.4 0.2    setosa
  8. V7   5.4 3.9 1.7 0.4    setosa
复制代码

二维码

扫码加我 拉你入群

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

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

关键词:Frame Fram Data FRA RAM 命名

沙发
nieqiang110 学生认证  发表于 2013-11-7 13:09:17
names(tz)<-tz[1,]
tz<-tz[-1]
已有 1 人评分热心指数 收起 理由
qoiqpwqr + 1 热心帮助其他会员

总评分: 热心指数 + 1   查看全部评分

藤椅
yywan0913 在职认证  发表于 2013-11-7 15:25:27
tx<-read.table("00.txt", header=T)  不可以?
是什么给了你自信

板凳
麻烦and纠结 发表于 2013-11-7 15:34:32
yywan0913 发表于 2013-11-7 15:25
tx
不行 因为我的数据 是横着的 它的变量名在左边第一列 然后 第一行是数据 它不能做标题

报纸
麻烦and纠结 发表于 2013-11-7 15:36:08
nieqiang110 发表于 2013-11-7 13:09
names(tz)
好奇怪啊 你看
  1. > names(tz)<-tz[1,]
  2. > tz<-tz[-1]
  3. > tz
  4.       24  40  22         2
  5. V1    x2  x3  x4   Species
  6. V2   3.5 1.4 0.2    setosa
  7. V3     3 1.4 0.2    setosa
  8. V4   3.2 1.3 0.2    setosa
复制代码
  1. > tz[1,]
  2.    V1 V2 V3 V4      V5
  3. V1 x1 x2 x3 x4 Species
复制代码

地板
nieqiang110 学生认证  发表于 2013-11-7 20:30:25
抱歉,漏掉了一个逗号:
names(tz)<-tz[1,]
tz<-tz[-1,]
tz
现在试试

7
frankwzhg 发表于 2013-11-7 20:40:28
应该是不可以一次完成,这样可以试想
1,现将第一行取出存入一个向量中:
colname<-as.vector(tz[1,])
2, 将这个向量赋值给colname
colnames(tz)<-colname
注意:这个向量中不能有两个相同的值。如果有必须增加参数区分

8
yywan0913 在职认证  发表于 2013-11-7 21:14:39
frankwzhg 发表于 2013-11-7 20:40
应该是不可以一次完成,这样可以试想
1,现将第一行取出存入一个向量中:
colname
  1. tx<-read.table("00.txt", header=FALSE)
  2. colnames=tx[,1]
  3. tx[,1]=NULL
  4. ty=t(tx)
  5. ty=as.data.frame(ty)
  6. colnames(ty)=colnames
  7. ty
复制代码
是什么给了你自信

9
麻烦and纠结 发表于 2013-11-8 08:40:34
nieqiang110 发表于 2013-11-7 20:30
抱歉,漏掉了一个逗号:
names(tz)
是上面这一个
  1. > names(tz)<-tz[1,]
复制代码
运行后列名变成了 24 40 22 2

10
麻烦and纠结 发表于 2013-11-8 09:00:01
frankwzhg 发表于 2013-11-7 20:40
应该是不可以一次完成,这样可以试想
1,现将第一行取出存入一个向量中:
colname
额!可以直接names(tz)<-tz[1,],一开始出现的是数字而不是变量名,是因为我的数据的类型是factor,恩恩 同样很感谢你的办法

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-5 01:58