楼主: MISSCCC
3142 12

[问答] Rstudio 无法使用[,1:2]读取资料 [推广有奖]

  • 1关注
  • 1粉丝

已卖:9份资源

硕士生

92%

还不是VIP/贵宾

-

威望
0
论坛币
304 个
通用积分
14.0000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
1510 点
帖子
78
精华
0
在线时间
303 小时
注册时间
2014-9-17
最后登录
2022-5-21

楼主
MISSCCC 发表于 2017-3-20 15:58:43 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
想请问论坛内各位高手们:

R error.PNG

如上图所示,当我想使用[,1:2]读取资料前两栏位资料时变成赋值的结果。

想请问是我的代码有误?(在另一台电脑使用同一代码有取得投保证号、身份证号两个栏位的资料)
还是其他原因呢?

如何解决?

谢谢各位。
二维码

扫码加我 拉你入群

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

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

关键词:资料

沙发
johnmy 发表于 2017-3-20 18:11:14
正常情况下应该是可以的。
你的data.res是不是个data.table。
你dput(data.res)贴上来。

藤椅
johnmy 发表于 2017-3-20 18:18:41
或是找个R内置的数据试一下。如:airquality[,1:2]。
可以用str(data.res)看一下原始数据类型

板凳
MISSCCC 发表于 2017-3-21 12:54:34
johnmy 发表于 2017-3-20 18:11
正常情况下应该是可以的。
你的data.res是不是个data.table。
你dput(data.res)贴上来。
是,data.table
dput(data.res)会出现:
Error in dput(data.res) :
  invalid multibyte string at '<b3><96><a1><8c> 0'

报纸
MISSCCC 发表于 2017-3-21 13:00:51
johnmy 发表于 2017-3-20 18:18
或是找个R内置的数据试一下。如:airquality[,1:2]。
可以用str(data.res)看一下原始数据类型
airquality[,1:2]出现前两列数据。
str(data.res)显示如下:
Classes ‘data.table’ and 'data.frame':        10000000 obs. of  7 variables:
$ 嚜輯??? 0: int  1009102 1045392 1036894 1040488 1028979 1187450 1157883 5137403 2051000 1197421 ...
$ 鞈?銵?2      : chr  "K100097924" "K100097924" "K100097924" "K100097924" ...
$ 鞈?銵?3      : int  19380705 19380705 19380705 19380705 19380705 19380705 19380705 19380705 19310520 19311124 ...
$ 鞈?銵?5      : int  19920601 19961116 19860425 19861122 19920213 19871030 19890627 19900710 19800711 19900514 ...
$ 鞈?銵?6      : int  2 2 2 2 2 2 2 2 2 2 ...
$ 鞈?銵?7      : int  19961111 19980731 19860712 19870713 19920604 19890123 19900125 19900730 19830815 19901023 ...
$ 鞈?銵?8      : int  24000 40100 6600 7200 11400 8400 9000 9000 3300 10200 ...
- attr(*, ".internal.selfref")=<externalptr>

重新命名栏位(英文)后,读取data.res[,1:2]得到结果仍未1 2

地板
MISSCCC 发表于 2017-3-21 13:03:11
johnmy 发表于 2017-3-20 18:18
或是找个R内置的数据试一下。如:airquality[,1:2]。
可以用str(data.res)看一下原始数据类型
airquality结果为前两列数据。

str(data.res):Classes ‘data.table’ and 'data.frame':        10000000 obs. of  7 variables

由于第一栏位为中文命名,更改至英文命名后data.res[,1:2]仍为1 2赋值结果

7
johnmy 发表于 2017-3-21 17:30:45
MISSCCC 发表于 2017-3-21 13:03
airquality结果为前两列数据。

str(data.res):Classes ‘data.table’ and 'data.frame':        10000000 o ...
data.table和其他取值不太一样,想办法转为纯的data.frame,或看一下data.table的帮助。以前用过,忘了。

8
MISSCCC 发表于 2017-3-22 15:08:13
johnmy 发表于 2017-3-21 17:30
data.table和其他取值不太一样,想办法转为纯的data.frame,或看一下data.table的帮助。以前用过,忘了。
恩呢~好的,谢谢你。
主要是不太清楚,为何手上两台电脑上同样的R版本,用同样的代码data[,1:2](读取资料方式也一样,data.frame形式)。但是一台结果为资料前两列,另一台的R为赋值。
再次感谢~~

9
johnmy 发表于 2017-3-23 04:39:45
两个电脑都运行下sessionInfo()
比较一下结果就知道了。
估计正常的那个没有装data.table包

10
Eric1028 发表于 2017-3-23 07:30:41 来自手机
MISSCCC 发表于 2017-3-20 15:58
想请问论坛内各位高手们:


DT[, 1:2, with=F]

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

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