如何通过R中的行将数据帧值转换为向量?

数据可以任何形式提供给我们,但有可能不适合用于分析。有时数据记录在数据框中,但我们可能需要将其作为向量。在这种情况下,我们必须更改向量中数据帧的值。这可以通过在将数据帧与t换位后将它们读取为矢量来读取数据帧值来完成。

示例

请看以下数据帧-

> x1<-rep(c(1,2,3,4,5),times=4)
> x2<-1:20
> x3<-rep(c(5,10,15,20),each=5)
> df<-data.frame(x1,x2,x3)
> df
  x1  x2 x3
 1 1  1  5
 2 2  2  5
 3 3  3  5
 4 4  4  5
 5 5  5  5
 6 1  6 10
 7 2  7 10
 8 3  8 10
 9 4  9 10
10 5 10 10
11 1 11 15
12 2 12 15
13 3 13 15
14 4 14 15
15 5 15 15
16 1 16 20
17 2 17 20
18 3 18 20
19 4 19 20
20 5 20 20
> as.vector(t(df))
[1] 1 1 5 2 2 5 3 3 5 4 4 5 5 5 5 1 6 10 2 7 10 3 8 10 4 9 10 5 10 10 1 11 15 2 12 15 3 13 15 4 14 15 5 15 15 1 16 20 2 17 20 3 18 20
[55] 4 19 20 5 20 20
> Vector_df<-as.vector(t(df))
> sum(Vector_df)
[1] 520
> mean(Vector_df)
[1] 8.666667

让我们看另一个例子-

> y1<-20:1
> y2<-rep(c(2,4,6,8,10),times=4)
> y3<-c(22,25,27,21,18,19,28,24,29,15,27,24,16,18,28,17,18,26,23,22)
> df_y<-data.frame(y1,y2,y3)
> df_y
   y1 y2 y3
 1 20  2 22
 2 19  4 25
 3 18  6 27
 4 17  8 21
 5 16 10 18
 6 15  2 19
 7 14  4 28
 8 13  6 24
 9 12  8 29
10 11 10 15
11 10  2 27
12  9  4 24
13  8  6 16
14  7  8 18
15  6 10 28
16  5  2 17
17  4  4 18
18  3  6 26
19  2  8 23
20  1 10 22
> Vector_new<-as.vector(t(df_y))
> Vector_new
[1] 20 2 22 19 4 25 18 6 27 17 8 21 16 10 18 15 2 19 14 4 28 13 6 24 12 8 29 11 10 15 10 2 27 9 4 24 8 6 16 7 8 18 6 10 28 5 2 17 4 4 18 3 6 26
[55] 2 8 23 1 10 22