如何在 R 中将旧数据帧转换为新数据帧?


要将旧数据帧转换为新数据帧,我们可以简单地设置新名称。例如,如果我们有一个名为 df 的数据帧,并且希望将其转换为一个新数据帧(比如 df_new),那么可以这样操作:df_new<-df。但如果我们还要更改列名称,则需要使用 data.frame,新的列名称将按如下示例中所示进行分配。

示例1

考虑以下数据帧 −

实时演示

> x1<-rpois(20,5)
> x2<-rpois(20,5)
> df1<-data.frame(x1,x2)
> df1

输出

   x1 x2
1  8  6
2  4  9
3  3  2
4  3  5
5  7  4
6  4  8
7  8  6
8  12 12
9  8  6
10 8  6
11 3  4
12 8  3
13 8  8
14 1  8
15 7  7
16 7  2
17 6  6
18 8  4
19 1  7
20 3  7

将 df1 转换为新的数据帧 −

> new_df1<-data.frame(v1=df1$x1,v2=df1$x2)
> new_df1

输出

   v1 v2
1  8  6
2  4  9
3  3  2
4  3  5
5  7  4
6  4  8
7  8  6
8  12 12
9  8  6
10 8  6
11 3  4
12 8  3
13 8  8
14 1  8
15 7  7
16 7  2
17 6  6
18 8  4
19 1  7
20 3  7

示例2

实时演示

> y1<-rnorm(20)
> y2<-rnorm(20)
> df2<-data.frame(y1,y2)
> df2

输出

       y1          y2
1   0.16271874 -0.13815830
2  -0.71427991  0.59659353
3   0.91988256 -0.93139535
4   0.21826390 -1.05463645
5  -0.46250555  0.23841747
6  -2.33005442  0.01311722
7   0.07587324 -0.60952309
8   1.69626502 -0.54502419
9  -0.69264529 -1.61676626
10  0.52631934 -0.26636235
11  0.54617330 -1.52785395
12  0.06885748  0.79790822
13  1.21325507  1.36154991
14 -1.30941046 -2.13603119
15  0.87466151 -1.07515475
16  0.48641809  0.58819125
17 -1.06275086 -0.79261408
18 -0.59022569  0.08437131
19 -0.26362438 -1.31612747
20 -1.06148933 -0.36654012

将 df2 转换为新的数据帧 −

> new_df2<-data.frame(Var1=df2$y1,Var2=df2$y2)
> new_df2

输出

      Var1       Var2
1   0.16271874 -0.13815830
2  -0.71427991  0.59659353
3   0.91988256 -0.93139535
4   0.21826390 -1.05463645
5  -0.46250555  0.23841747
6  -2.33005442  0.01311722
7   0.07587324 -0.60952309
8   1.69626502 -0.54502419
9  -0.69264529 -1.61676626
10  0.52631934 -0.26636235
11  0.54617330 -1.52785395
12  0.06885748  0.79790822
13  1.21325507  1.36154991
14 -1.30941046 -2.13603119
15  0.87466151 -1.07515475
16  0.48641809  0.58819125
17 -1.06275086 -0.79261408
18 -0.59022569  0.08437131
19 -0.26362438 -1.31612747
20 -1.06148933 -0.36654012

更新于: 2021 年 3 月 5 日

458 次浏览

开启你的职业生涯

完成课程即可获得认证

开始
广告