如何在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