对不起,我无法制作更具体的标题。我试图让自己摆脱电子表格的困难任务,这给我带来了特别的麻烦 - 我可以在Excel中做到这一点,但我真的不知道如何从R开始。这有点难以描述。我想这里可能涉及到一些技巧,所以我希望这对其他人有用。R中的数据传送:子集和排列不均匀长度的向量
我有来自以下形式从电子表格数据:
数据:
1 GOEK, WOWP, PEOL, WJRN, KENC, QPOE, JFPG, PWKR, PWEOR, JFOKE, POQK, LSPF, PEKF,PFOW, VCNS, ALAO, LFOD
2 KFDL, LFOD, WOWP, PWEO, PWEOR, PRCP, ALPQ, JFOKE, ALLF, VCNS CNIR,
3 KJTJ, FKOF, VCNS, FLEP
4 FKKF, EPTR
5 QPOE, PEOL, WJRN, VCNS, PEKF, PFPW
而这个数据与下列键关联:
重点:
Items A B C
ALAO NA 0.12246503 0.137902549
ALLF 0.016262491 0.557522799 0.622560763
ALPQ 0.409770566 0.770904525 NA
CNIR NA 0.38075281 0.698236443
EPTR 0.718354484 0.290028597 0.525661861
FKKF 0.801489091 0.878405308 0.645004844
FKOF 0.643251028 0.131643544 NA
FLEP 0.018262707 0.211220859 0.457302727
GOEK 0.902121539 NA NA
JFOKE 0.808410498 0.301443669 0.575188395
JFPG NA NA 0.343824191
KENC 0.882285296 0.372821865 0.593742731
KFDL 0.077569421 0.076497291 NA
KJTJ 0.249613609 0.227241864 NA
LFOD NA 0.000343115 0.329546051
LSPF 0.088451014 0.65148309 0.267490643
PEKF 0.645309773 NA 0.116601451
PEOL 0.626916187 0.093812247 0.152577881
PFOW 0.86690534 0.596673645 NA
PFPW NA 0.018869604 NA
POQK 0.683221579 NA 0.472456955
PRCP 0.486488748 0.860947689 0.097916066
PWEO 0.665854791 0.814111848 0.026085774
PWEOR 0.611034332 0.17254104 0.212386401
PWKR NA NA 0.357298987
QPOE 0.815885005 0.083834541 NA
VCNS 0.394817612 0.250760686 0.419539549
WJRN 0.403002388 0.705142265 0.768961818
WOWP 0.794250738 NA 0.967405211
下面是一般方法:
在数据来自电子表格中的一个细胞,从而它会由R如果直接导入被解释为一个串中所示的每个行。将每行的字符串拆分为可作为向量存储在R中的表单。
根据与其关联的行中的值将数据过滤为三个类别(A,B或C)。例如,对于第数据的第5行,我们具有值:QPOE, PEOL, WJRN, VCNS, PEKF, PFPW
。纵观关键,我们可以把它变成基于什么是包含在A,B或C.这种三子类别是根据是否存在NA该行或不:
A QPOE PEOL WJRN VCNS PEKF B QPOE PEOL WJRN VCNS PFPW C PEOL WJRN VCNS PEKF
现在我们已经瓜分了5行我们数据到其各自的类别,我们可以做一个单独的表此行包含关联值:
A 0.815885005 0.626916187 0.403002388 0.394817612 0.645309773 B 0.083834541 0.093812247 0.705142265 0.250760686 0.018869604 C 0.152577881 0.768961818 0.419539549 0.116601451
所以我们^ h ave一种散列表...排序。现在我想将这些值存储在一个表中。这将从根本看在最终的形式是这样的(显示数据只有5行):
Cat A Item A Value B Item B Value C Item C Value
5 QPOE 0.815885005 QPOE 0.083834541 PEOL 0.152577881
5 PEOL 0.626916187 PEOL 0.093812247 WJRN 0.768961818
5 WJRN 0.403002388 WJRN 0.705142265 VCNS 0.419539549
5 VCNS 0.394817612 VCNS 0.250760686 PEKF 0.116601451
5 PEKF 0.645309773 PFPW 0.018869604 NA NA
在现实中,我在数据 400行“猫”的不只是5
这是存储数据以便于参考的最佳方法吗?嵌套列表会是这样吗?
- 猫行1个
- 甲物品
- 值
- 乙物品
- 值
- Ç物品
- 值
- 甲物品
- 猫行2 ...
我只是犹豫,使数据帧该数据,因为在该行的长度那么多变性我原始数据当分为A,B,和C的最短的就必须有NA的填补最长者的长度,以适应在所述数据帧。有关此事的事情让我感到不舒服。
我可以随时查找回答使用的功能和计算出来,所以进行了深入的解释是没有必要,除非你感到特别慷慨!感谢您的时间。
注意KJTJ数据只有两个出三个值的 - 你应该检查这是为什么。 – Miff
工作很好,谢谢!我永远不会想到这样做。你使用的列表格式是完美的,比我所建议的更好。另外,我在KJTJ的NA中加入了 - 我想在编辑帖子时我失去了它。 – syntonicC