我在R(47541025行)中有这个数据表:
require(data.table)
DT<-fread("pmiDistances.csv")
head(DT)
language 1 language 2 distance
1: Kho.CENTRAL_KHOISAN.GWI Kho.CENTRAL_KHOISAN.GWI 0.0000000
2: Kho.CENTRAL_KHOISAN.GWI Kho.CENTRAL_KHOISAN.GXANA 0.2195843
3: Kho.CENTRAL_KHOISAN.GWI Kho.CENTRAL_KHOISAN.KHOEKHOEGOWAB 0.6749363
4: Kho.CENTRAL_KHOISAN.GWI Kho.CENTRAL_KHOISAN.KHWE 0.6089206
5: Kho.CENTRAL_KHOISAN.GWI Kho.CENTRAL_KHOISAN.KORANA 0.7163111
6: Kho.CENTRAL_KHOISAN.GWI Kho.CENTRAL_KHOISAN.KWADI 0.8017179
所以这基本上是图表中几个节点及其距离的列表
我有兴趣提取一个距离为41种语言的子集,我保存在.txt文件中
最聪明的方法是什么? (我不认为2嵌套for循环会起作用)
答案 0 :(得分:0)
@digEmAll演示了执行此操作的典型方法:
DT[language1 %in% desired_subset & language2 %in% desired_subset]
如果您计划重复此操作,您可能还需要关键data.table
,因为它太大了:
setkey(DT, language1, language2)
DT[.(desired_subset, desired_subset)]
看来你最好阅读Getting Started Page,尤其是你的问题vignette on subsetting。