樓主: 小小n
220 5

[問答] 如何將前兩列數據分別作爲行列名,將第三列的數據轉化爲依前兩列分布的矩陣 [推廣有獎]

  • 0關注
  • 0粉絲

學前班

90%

還不是VIP/貴賓

-

威望
0
論壇币
20 个
通用積分
0
學術水平
0 点
熱心指數
0 点
信用等級
0 点
經驗
113 点
帖子
3
精華
0
在線時間
0 小时
注冊时间
2018-6-22
最后登錄
2019-8-13

小小n 发表于 2019-8-13 00:32:50 |顯示全部樓層
有一個大的數據表,前兩列分別是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
感謝各位大神援助

stata SPSS
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 |顯示全部樓層
您需要登錄后才可以回帖 登錄 | 我要注冊

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 論壇法律顾问:王进律师 知識産權保護聲明   免責及隱私聲明

GMT+8, 2019-8-26 15:21