首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将R中的数据矢量化?

如何将R中的数据矢量化?
EN

Stack Overflow用户
提问于 2013-07-24 17:50:23
回答 2查看 194关注 0票数 1

我有这个数据:

代码语言:javascript
复制
aaa=read.table(text="variable value   
  X3CO     24.88994
  X3CO     25.02366
  X3CO     24.90309
  X3CS     25.70630
  X3CS     25.26748
  X3CS     25.19539
  X3CD     26.95723
  X3CD     26.84726
  X3CD     26.23144
  X3CSD    36.95251
  X3CSD    36.04091
  X3CSD    36.90476
  X5CO     25.44123
  X5CO     24.97586
  X5CO     24.86076
  X5CS     25.71570
  X5CS     26.10244
  X5CS     25.39033
  X5CD     27.67509
  X5CD     27.18986
  X5CD     26.93682
  X5CSD    36.26529
  X5CSD    34.88553
  X5CSD    33.97910
  X7CO     24.71426
  X7CO     24.08444
  X7CO     23.97058
  X7CS     24.55734
  X7CS     24.56562
  X7CS     24.75898
  X7CD     27.14260
  X7CD     26.65704
  X7CD     26.49533
  X7CSD    33.89882
  X7CSD    32.91092
  X7CSD    32.79199
  X9CO     26.86141
  X9CO     26.42649
  X9CO     25.83506
  X9CS     28.17368
  X9CS     27.27401
  X9CS     26.58814
  X9CD     28.88915
  X9CD     28.32598
  X9CD     28.27136
  X9CSD    34.61352
  X9CSD    35.84190
  X9CSD    35.80329",header=TRUE)

您是否知道是否有一种使用“变量”级别将此数据向量化为向量的方法?

这一过程相当于手动完成以下操作:

代码语言:javascript
复制
c(c(24.88994,25.02366,24.90309), c(25.70630,25.26748,25.19539),...)) 
corresponding to 
c(c(X3CO,X3CO,X3CO),c(X3CS,X3CS,X3CS),...))
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-24 18:07:37

您可以使用split()函数创建一个数据帧列表,每个数据帧只包含一个级别,然后从该列表中提取向量:

代码语言:javascript
复制
aaa.sp <- split(aaa, aaa$variable)
aaa.sp[[1]]$variable
aaa.sp[[1]]$value
票数 2
EN

Stack Overflow用户

发布于 2013-07-24 17:55:34

对于给定的数据框架:

代码语言:javascript
复制
aaa$value

因为它已经按variable分组(如果不一定排序的话)。

对于尚未分组的数据框架:

代码语言:javascript
复制
aaa[order(aaa$variable), "value"]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17841279

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档