如何在 R 中转置数据框(附示例)

如何在 R 中转置数据框(附示例)

在 R 中转置数据框有两种常用方法:

方法一:使用Base R

#transpose data frame

t(df)

方法2:使用data.table

library (data.table)

#transpose data frame

df_t <- transpose(df)

#redefine row and column names

rownames(df_t) <- colnames(df)

colnames(df_t) <- rownames(df)

以下示例展示了如何在实践中使用每种方法。

方法 1:使用 Base R 转置数据帧

假设我们有以下数据框:

#create data frame

df <- data. frame (A = c(1, 2, 3, 4, 5),

B = c(6, 7, 8, 9, 10),

C = c(11, 12, 13, 14, 15))

#define row names

row. names (df) <- c('One', 'Two', 'Three', 'Four', 'Five')

#view data frame

df

ABC

One 1 6 11

Two 2 7 12

Three 3 8 13

Oven 4 9 14

Five 5 10 15

我们可以使用R基t()函数来快速转置数据框:

#transpose data frame

t(df)

One Two Three Four Five

A 1 2 3 4 5

B 6 7 8 9 10

C 11 12 13 14 15

行和列现在颠倒了。

方法2:使用data.table转置数据框

让我们再次假设我们有以下数据框:

#create data frame

df <- data. frame (A = c(1, 2, 3, 4, 5),

B = c(6, 7, 8, 9, 10),

C = c(11, 12, 13, 14, 15))

#define row names

row. names (df) <- c('One', 'Two', 'Three', 'Four', 'Five')

#view data frame

df

ABC

One 1 6 11

Two 2 7 12

Three 3 8 13

Oven 4 9 14

Five 5 10 15

我们可以使用data.table包的transpose()函数来快速转置数据框:

library (data.table)

#transpose data frame

df_t <- transpose(df)

#redefine row and column names

rownames(df_t) <- colnames(df)

colnames(df_t) <- rownames(df)

#display transposed data frame

df_t

One Two Three Four Five

A 1 2 3 4 5

B 6 7 8 9 10

C 11 12 13 14 15

结果是上一个示例的转置数据帧。

注意:如果您正在处理非常大的数据框,则 data.table 方法将比基本 R 快得多。

其他资源

以下教程解释了如何在 R 中对数据框执行其他常见操作:

如何将函数应用于 R 中的每个数据框行 如何在R中的数据框中添加空列如何在 R 中对数据框进行子集化

相关推荐

火与酒之歌
线上365bet投注

火与酒之歌

📅 06-24 👍 252
异度之刃2火鸡人
如何下载365app软件

异度之刃2火鸡人

📅 09-16 👍 970