全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
12592 10
2010-10-08
我拿R导入了一组数据,其中一列是以文本格式写的“000001,000002...600000”,导入之后R直接把他们转换成数字了,也就变成了“1,2,3...600000”,请问如何才能转换成原来的前面带0的文本格式呢?
二维码

扫码加我 拉你入群

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

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

全部回复
2010-10-8 23:59:41
1# wxc0429

好像不可以了,只能重新再输一次,再输入“00001”...(加引号0就不会消失了,但这样又不美观了,自己去权衡吧)
二维码

扫码加我 拉你入群

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

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

2010-10-9 00:18:00
给你提供两种方法(但是注意,要确保你想要的那种格式,变量的类型不可能是numeric,如果你要进行数值运算,可以建立临时变量,用as.numeric转换):
1 用as.character转换成character,然后用paste命令,这个用法简单明了,直接用paste就好了。但是可能需要用循环。
2 用字符串修改命令,首先假设你那列数据是X
   xx<-X+1000000000000   %%%%%12个0
   xx<-as.character(xx)
   xx<-gsub("1000000","",xx)
xx就是你要的一列。但是类型是character。如果要进行数值运算,用as.numeric转换后赋值给一个临时变量使用。
二维码

扫码加我 拉你入群

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

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

2010-10-9 08:06:17
再提供一种方法(有点投机取巧),在你的原始数据集上添加一行,例如将第一行复制一下就行,然后将其中的000001改成xblabla或任意其他字符,接着再用R来读入,读入后删除自己添加的那行就OK了
二维码

扫码加我 拉你入群

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

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

2010-10-9 10:24:57
1# wxc0429

as.character
二维码

扫码加我 拉你入群

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

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

2010-10-9 17:19:17
3# ltx5151
直接用as.character是不起作用的,1,2,3等数字转换出来前面是没有0的,你的第二种方法是可行的。我在思考是否应该有某个函数可以更加简洁的完成这样的转换。谢谢您的回复!
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群