楼主: 小小n
3216 5

[问答] 如何将前两列数据分别作为行列名,将第三列的数据转化为依前两列分布的矩阵 [推广有奖]

  • 0关注
  • 0粉丝

高中生

12%

还不是VIP/贵宾

-

威望
0
论坛币
6 个
通用积分
2.0000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
289 点
帖子
7
精华
0
在线时间
31 小时
注册时间
2018-6-22
最后登录
2021-2-18

楼主
小小n 发表于 2019-8-13 00:32:50 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
有一个大的数据表,前两列分别是ID和年龄,各自都有重复值,但是放在一起是唯一识别的,第三列是我需要的信息,我想将第三列数字放在前两列构成的一个matrix里面怎么实现呢?
数据表大致如下:
ID  age  value
1   19   1
1   25   2
1   27   3
2   8    3
2   15   2
2   26   3
想实现成的样子如下:
    8  9 …… 15 16 …… 19 …… 25 26 27
ID1 NA NA…… NA NA …… 1  …… 2  NA 3
ID2 3  NA…… 2  NA …… 1  …… 2  3  NA
感谢各位大神援助
二维码

扫码加我 拉你入群

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

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

关键词:数据转化 数据表 在一起 重复值

沙发
cheetahfly 在职认证  发表于 2019-8-13 08:46:55
dplyr::spread(age, value, fill = NA)
后面转化成matrix略过

藤椅
5752 发表于 2019-8-13 09:02:38
reshape2:dcast(df,id~value)

板凳
小小n 发表于 2019-8-13 11:26:21 来自手机
cheetahfly 发表于 2019-8-13 08:46
dplyr::spread(age, value, fill = NA)
后面转化成matrix略过
dplyr包里面没有找到spread这个函数诶

报纸
cheetahfly 在职认证  发表于 2019-8-13 13:19:29
小小n 发表于 2019-8-13 11:26
dplyr包里面没有找到spread这个函数诶
sorry
tidyr::spread()

地板
xujingjun 发表于 2019-8-14 09:08:40

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-30 03:52