如何从R中具有行名的列表中存储的数据帧中创建单个数据帧?

如果我们在列表中存储了多个相同大小的数据帧,并且我们相信这些数据帧具有相似的特征,那么我们可以创建一个数据帧。这可以在do.call的帮助下完成。例如,如果我们使用名称List定义了一个列表,其中包含包含名称相同的行数的数据框,则可以创建一个数据框do.call(rbind,unname(List))。

示例

df1<−data.frame(x=rnorm(10),row.names=sample(LETTERS[1:26],10))

df2<−data.frame(x=rnorm(10),row.names=sample(LETTERS[1:26],10))

df3<−data.frame(x=rnorm(10),row.names=sample(LETTERS[1:26],10))

List<−list(First=df1,Second=df2,Third=df3)

List

输出结果
$First

x

G 0.30699620

P 1.11451394

I 0.16537658

J −0.99267571

X −0.00183875

T 0.65413132

M 0.46023584

H −0.23309683

W 0.71764386

L 0.71318867

$Second

x

B 0.12553866

X 0.78585517

D −0.86144038

I −0.46069668

T −0.04954584

S 0.41792421

L 0.77762054

U 0.10214920

P −0.54777071

Z −0.17795518

$Third

x

P −1.03833288

A −2.06108259

D 0.06075337

S −0.25815094

V −1.14154154

Z 1.28649520

R 0.58446876

O −0.08794448

C −0.14094378

N −0.49827426

将列表数据帧转换为单个数据帧-

示例

df<−do.call(rbind,unname(List))

df

输出结果
x

G 0.30699620

P 1.11451394

I 0.16537658

J −0.99267571

X −0.00183875

T 0.65413132

M 0.46023584

H −0.23309683

W 0.71764386

L 0.71318867

B 0.12553866

X1 0.78585517

D −0.86144038

I1 −0.46069668

T1 −0.04954584

S 0.41792421

L1 0.77762054

U 0.10214920

P1 −0.54777071

Z −0.17795518

P2 −1.03833288

A −2.06108259

D1 0.06075337

S1 −0.25815094

V −1.14154154

Z1 1.28649520

R 0.58446876

O −0.08794448

C −0.14094378

N −0.49827426

以上是 如何从R中具有行名的列表中存储的数据帧中创建单个数据帧? 的全部内容, 来源链接: utcz.com/z/346725.html

回到顶部