如何在 Python 中使用 cbind

如何在 Python 中使用 cbind

在这篇文章中,我们将讨论Python中的cbind。我们已经看到R编程语言中的cbind()函数将指定的向量、矩阵或数据框按列组合起来。但是在Python中,有一个concat()函数,它相当于R语言的cbind()函数。

创建用于演示的数据框架

# import pandas module
import pandas as pd
  
# create dataframe
data1 = pd.DataFrame({'name': ['sravan', 'harsha', 'jyothika'],
                      'subject1': ['python', 'R', 'php'],
                      'marks': [96, 89, 90]})
  
  
# create dataframe
data2 = pd.DataFrame({'name': ['sravan', 'harsha', 'jyothika'],
                      'subject2': ['html', '.net', 'jsp'],
                      'marks': [89, 79, 80]})
  
# display
print(data1)
  
print(data2)

输出 :

如何在 Python 中使用 cbind?

例子1:连接具有相同索引的数据框架

这将根据索引连接逐行数据。这里两个数据框架的索引是相同的。

# import pandas module
import pandas as pd
  
# create dataframe
data1 = pd.DataFrame({'name': ['sravan', 'harsha', 'jyothika'],
                      'subject1': ['python', 'R', 'php'],
                      'marks': [96, 89, 90]})
  
  
# create dataframe
data2 = pd.DataFrame({'name': ['sravan', 'harsha', 'jyothika'],
                      'subject2': ['html', '.net', 'jsp'],
                      'marks': [89, 79, 80]})
  
  
# concat dataframes
pd.concat([data1, data2], axis=1)

输出 :

如何在 Python 中使用 cbind?

例子2:合并不等价指数的数据帧

在这种情况下,两个数据帧的指数不相等,当我们应用concat()函数时,会产生一个新的数据帧,其值为NaN。

# import pandas module
import pandas as pd
  
# create dataframe
data1 = pd.DataFrame({'name': ['sravan', 'harsha', 'jyothika'],
                      'subject1': ['python', 'R', 'php'],
                      'marks': [96, 89, 90]}, index=[0, 1, 2])
  
  
# create dataframe
data2 = pd.DataFrame({'name': ['sravan', 'harsha', 'jyothika'],
                      'subject2': ['html', '.net', 'jsp'],
                      'marks': [89, 79, 80]}, index=[3, 4, 5])
  
  
# concat dataframes
pd.concat([data1, data2], axis=1)

输出 :

如何在 Python 中使用 cbind?

为了删除这些NaN行,我们必须使用reset_index()方法来删除索引。

语法 : dataframe.reset_index(drop=True, inplace=True)

示例:

# import pandas module
import pandas as pd
  
# create dataframe
data1 = pd.DataFrame({'name': ['sravan', 'harsha', 'jyothika'],
                      'subject1': ['python', 'R', 'php'],
                      'marks': [96, 89, 90]}, index=[0, 1, 2])
  
  
# create dataframe
data2 = pd.DataFrame({'name': ['sravan', 'harsha', 'jyothika'],
                      'subject2': ['html', '.net', 'jsp'],
                      'marks': [89, 79, 80]}, index=[3, 4, 5])
  
# remove dataframe 1 indices
data1.reset_index(drop=True, inplace=True)
  
# remove dataframe 2 indices
data2.reset_index(drop=True, inplace=True)
  
# concat dataframes
pd.concat([data1, data2], axis=1)

输出 :

如何在 Python 中使用 cbind?

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程