我有一個海量數據集(9.000.000條目),其中兩列是因子(409個層次)。 這表示特定時期內機場之間的航班。 下面的數據集已經在轉換之後。意思是「ORIGIN」和「DEST」在數字形式上。將因子變量轉換爲數字,從數字轉換回因子
ORIGIN DEST weight alpha
1 24 1195 1.512274e-04
1 78 844 2.557285e-03
100 2 1615 3.176266e-17
100 3 4196 9.111249e-09
100 7 1221 6.471515e-10
100 12 725 2.129114e-04
第二個數據集,包含所有IATA代碼,包含經度和緯度。
City IATA Latitude Longitude
Goroka GKA -6.081690 145.392
Madang MAG -5.207080 145.789
Mount Hagen HGU -5.826790 144.296
Nadzab LAE -6.569803 146.726
Port Moresby POM -9.443380 147.220
Wewak WWK -3.583830 143.669
目前的流程如下:
- 轉換的2列到數字(因爲我需要他們後來像 那)
- 將轉換成在data.set IGRAPH
- 應用過濾算法(這就是爲什麼列是數字)
- 再次轉換爲數據集。
我的問題是我現在想把我有的數字轉換回前面的因素,因爲我需要第二個數據集的經度和緯度。
任何想法?我已經嘗試了幾乎所有我能想到的東西。
as.factor沒有工作我拿? – Alos
as.numeric(as.character(factor(c(1,100,23,47))))。 只是做因素會給它數字水平。所以轉換爲字符,然後轉換爲數字,所以在你的情況下這樣'as.numeric(as.character(df $ ORIGIN))',其中df是你的data.frame – infominer