将1x9数据帧重塑为4 x 3而不循环

埃米利奥·布鲁纳(Emilio M. Bruna)

基本上,我正在寻找用于数据帧的MATLAB vec2mat的R版本。我有一个1 x 9数据帧(下面是oneBYnine),我想转换成3 x 3数据帧(fourBYthree):

> oneBYnine
data
1     4
2     7
3   A.1
4     6
5     5
6     1
7   A.2
8    12
9     6
10    8
11  A.3
12   15

>fourBYthree
a b     c  d
1 4 7 A.1  6
2 5 1 A.2 12
3 6 8 A.3 15

data<-c("4","7","A.1","6", "5","1","A.2","12", "6","8","A.3", "15")
oneBYnine<-data.frame(data)

a<-c("4","5","6")
b<-c("7","1","8")
c<-c("A.1","A.2","A.3")
d<-c("6", "12", "15")

fourBYthree<-data.frame(a,b,c,d)

我通过创建一个虚拟计数器数据帧然后循环(尝试重塑2和tidyr,直到我的头爆炸)来做到这一点。

Z<- as.data.frame(matrix(1:12,nrow=4,ncol=3))
Z<-as.data.frame(t(Z))

df<- as.data.frame(matrix(NA,nrow=3,ncol=4))
for(i in 1:3) 
  df[i,]<-oneBYnine$data[Z[i,1]:Z[i,4]]

df

我无法弄清楚为什么其中一些数据整理工作没有用,并且肯定有一种更干净的方法。有什么建议吗?

格雷戈尔·托马斯(Gregor Thomas)

我会通过一个矩阵:

# getting your data
oneBYnine = read.table("clipboard", stringsAsFactors = F)

mat = matrix(oneBYnine$data, ncol = 4, byrow = T)
dat = as.data.frame(mat, stringsAsFactors = F)

> dat
  V1 V2  V3 V4
1  4  7 A.1  6
2  5  1 A.2 12
3  6  8 A.3 15

随着stringsAsFactors = F每一列的将是一个字符。您可以根据需要将它们转换为数字或因子。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将512 x 3数据帧转换为R中的128 x 4 x 3矩阵

来自分类Dev

将R中具有X1,Y1,X2,Y2的数据帧重塑为X,Y1,Y2

来自分类Dev

使用x,y,z顺序将1D numpy数组重塑为3D

来自分类Dev

循环(1 + x + x ** 2 + x ** 3 + x ** 4 .... n)不起作用

来自分类Dev

将3列(x,y,结果)Python Pandas DataFrame转换为以x(唯一)为行,y(唯一)为列的结果值的数据帧

来自分类Dev

Python 3.x 嵌套循环

来自分类Dev

在 Python 3.x 中循环

来自分类Dev

python 3-x for x for循环-它们如何工作?

来自分类Dev

在 Python 3.x 中将 for 循环转换为 while 循环

来自分类Dev

无法将大小为 (x,) 的数组重塑为形状 (x,y,z,1)

来自分类Dev

有多个循环而在第一次循环后不更改x值?

来自分类Dev

将形状x的数组重塑为形状(x,y)的数组

来自分类Dev

自举网格3x3至6x2至9x1

来自分类Dev

Python:为什么不(a,b,c)=(* x,3)

来自分类Dev

Python:为什么不(a,b,c)=(* x,3)

来自分类Dev

CakePHP 3.x - 令牌不匹配的文件上传结果

来自分类Dev

如何在1x3数据帧上使用pivot_longer

来自分类Dev

奇数嵌套循环无法正确中断(Python 3.x)

来自分类Dev

通过python 3.x中的字典循环列表

来自分类Dev

PyGame不绘图X

来自分类Dev

Java for循环获取X

来自分类Dev

X嵌套循环

来自分类Dev

X可循环编辑

来自分类Dev

将2x36数据帧重组为6x6数据帧。掷骰子可视化

来自分类Dev

为什么猫x >> x循环?

来自分类Dev

图像网格:台式机为5 x 5,而移动设备为3 x 9

来自分类Dev

x中的Python用于循环0,3在变量中使用x

来自分类Dev

Python 3.x 和 Python 2.x 在 while 循环中的区别

来自分类Dev

for(x = ...; x <= ...; x ++)是否在JavaScript的每个循环中计算...?

Related 相关文章

热门标签

归档