R - 合并列表中的多个数据帧
在本文中,我们将讨论如何使用 R 编程语言合并列表中的多个数据框。
方法一:使用merge()
首先创建两个以上的数据框,以便我们能够合并它们。现在,使用 merge()函数以及所需的参数。
句法 :
merge( x=dataframe , y=dataframe , by= primary_key_of_the_dataframe )
现在,将此合并的数据帧传递给 as.list() 以将其转换为列表。
句法:
as.list(merged_dataframe)
示例 1:合并列表中的多个数据框
R
df = data.frame(
id=c(1, 2, 3),
name=c("karthik", "chandu", "nandu"))
df1 = data.frame(
id=c(1, 2, 3),
branch=c("IT", "CSE", "CSE"))
merg = merge(x=df, y=df1, by="id")
print(as.list(merg))
R
df = data.frame(
id=c(1, 2, 3),
name=c("karthik", "chandu", "nandu"))
df1 = data.frame(
id=c(1, 2, 3),
branch=c("IT", "CSE", "CSE"))
df2 = data.frame(
id=c(1, 2, 3),
company=c("TCS", "Accenture", "Infosys"))
merg = merge(x=df, y=df1, z=df2, by="id")
print(as.list(merg))
R
df = data.frame(name=c("karthik", "chandu", "nandu"))
df1 = data.frame(branch=c("IT", "CSE", "CSE"))
df2 = data.frame(company=c("TCS", "Accenture", "Infosys"))
merg = cbind(df, df1, df2)
print(as.list(merg))
R
df = data.frame(name=c("karthik", "chandu", "nandu"))
df1 = data.frame(collage_name=c("VFSTR", "VMTW", "IIT"))
df2 = data.frame(place=c("Guntur", "Hyderabad", "Kharagpur"))
df3 = data.frame(proper=c("yellandu", "yellandu", "yellandu"))
merg = cbind(df, df1, df2, df3)
print(as.list(merg))
R
library("tidyverse")
df1 = data.frame(
id=c(1, 2, 3),
name=c("karthik", "chandu", "nandu"))
df2 = data.frame(
id=c(1, 2, 3),
Gender=c("Male", "Female", "Male"))
df3 = data.frame(
id=c(1, 2, 3),
address=c("Yellandu", "Yellandu", "Yellandu"))
data = list(df1, df2, df3)
as.list(data % > % reduce(inner_join, by="id"))
R
library("tidyverse")
df1 = data.frame(
id=c(1, 2, 3),
name=c("karthik", "chandu", "nandu"))
df2 = data.frame(
id=c(1, 2, 3),
Gender=c("Male", "Female", "Male"))
df3 = data.frame(
id=c(1, 2, 3),
address=c("Yellandu", "Yellandu", "Yellandu"))
df4 = data.frame(
id=c(1, 2, 3),
father_name=c("Ramana", "Radha", "krishna"))
data = list(df1, df2, df3, df4)
as.list(data % > % reduce(inner_join, by="id"))
输出 :
示例 2:合并列表中的多个数据框
电阻
df = data.frame(
id=c(1, 2, 3),
name=c("karthik", "chandu", "nandu"))
df1 = data.frame(
id=c(1, 2, 3),
branch=c("IT", "CSE", "CSE"))
df2 = data.frame(
id=c(1, 2, 3),
company=c("TCS", "Accenture", "Infosys"))
merg = merge(x=df, y=df1, z=df2, by="id")
print(as.list(merg))
输出 :
方法二:使用cbind()函数
如果我们想合并两个以上的数据帧,我们可以使用 cbind()函数并将结果 cbind() 变量传递给 as.list()函数以将其转换为 list 。
句法 :
cbind( df1 , df2 . df3 , . . . dfn )
示例 1:合并列表中的多个数据框
电阻
df = data.frame(name=c("karthik", "chandu", "nandu"))
df1 = data.frame(branch=c("IT", "CSE", "CSE"))
df2 = data.frame(company=c("TCS", "Accenture", "Infosys"))
merg = cbind(df, df1, df2)
print(as.list(merg))
输出 :
示例 2:合并列表中的多个数据框
电阻
df = data.frame(name=c("karthik", "chandu", "nandu"))
df1 = data.frame(collage_name=c("VFSTR", "VMTW", "IIT"))
df2 = data.frame(place=c("Guntur", "Hyderabad", "Kharagpur"))
df3 = data.frame(proper=c("yellandu", "yellandu", "yellandu"))
merg = cbind(df, df1, df2, df3)
print(as.list(merg))
输出 :
方法 3:使用 tidyverse
如果我们想合并两个以上的数据帧,我们也可以使用 tidyverse 库。这里首先为所有参与的数据帧创建一个内部连接,然后将其转换为如上所述的列表。
句法:
reduce(inner_join, by=”common column”)
示例 1:合并列表中的多个数据框
电阻
library("tidyverse")
df1 = data.frame(
id=c(1, 2, 3),
name=c("karthik", "chandu", "nandu"))
df2 = data.frame(
id=c(1, 2, 3),
Gender=c("Male", "Female", "Male"))
df3 = data.frame(
id=c(1, 2, 3),
address=c("Yellandu", "Yellandu", "Yellandu"))
data = list(df1, df2, df3)
as.list(data % > % reduce(inner_join, by="id"))
输出 :
示例 2:合并列表中的多个数据框
电阻
library("tidyverse")
df1 = data.frame(
id=c(1, 2, 3),
name=c("karthik", "chandu", "nandu"))
df2 = data.frame(
id=c(1, 2, 3),
Gender=c("Male", "Female", "Male"))
df3 = data.frame(
id=c(1, 2, 3),
address=c("Yellandu", "Yellandu", "Yellandu"))
df4 = data.frame(
id=c(1, 2, 3),
father_name=c("Ramana", "Radha", "krishna"))
data = list(df1, df2, df3, df4)
as.list(data % > % reduce(inner_join, by="id"))
输出 :