Python中的pandas.concat()函数

Python中的pandas.concat()函数

pandas.concat()函数完成了所有繁重的工作,它与一个axisod Pandas对象一起执行连接操作,同时对其他axis上的索引(如果有的话)执行可选的集合逻辑(union或intersection)。

语法: concat(objs, axis, join, ignore_index, keys, levels, names, verify_integrity, sort, copy)

参数:

  • objs: 系列或数据框架对象
  • axis: 连接的axis;默认=0
  • join:处理其他axis上的索引的方式;默认=’外部’。
  • ignore_index: 如果为真,则不使用串联axis上的索引值;默认=假
  • keys: 序列,为结果索引添加一个标识符;默认 = 无
  • levels:构建MultiIndex时使用的特定级别(唯一值);默认=无
  • names: 所产生的分层索引中的等级名称;默认 = None
  • verify_integrity:检查新的串联axis是否包含重复的内容;默认 = False
  • sort:当连接为 “外部 “时,如果非连接axis尚未对齐,则对其进行排序;默认 = False
  • copy: 如果是假的,就不要不必要地复制数据;默认 = True

返回:对象的类型(数据框架系列)。

例子1:用默认参数串联2个系列。

# importing the module
import pandas as pd
  
# creating the Series
series1 = pd.Series([1, 2, 3])
display('series1:', series1)
series2 = pd.Series(['A', 'B', 'C'])
display('series2:', series2)
  
# concatenating
display('After concatenating:')
display(pd.concat([series1, series2]))

输出:

Python中的pandas.concat()函数

例子2:水平连接2个系列,索引=1

# importing the module
import pandas as pd
  
# creating the Series
series1 = pd.Series([1, 2, 3])
display('series1:', series1)
series2 = pd.Series(['A', 'B', 'C'])
display('series2:', series2)
  
# concatenating
display('After concatenating:')
display(pd.concat([series1, series2], 
                  axis = 1))

输出:

Python中的pandas.concat()函数

实例3:串联2个数据帧并分配键。

# importing the module
import pandas as pd
  
# creating the DataFrames
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'], 
                    'B': ['B0', 'B1', 'B2', 'B3']})
display('df1:', df1)
df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'], 
                    'B': ['B4', 'B5', 'B6', 'B7']})
display('df2:', df2)
  
# concatenating
display('After concatenating:')
display(pd.concat([df1, df2], 
                  keys = ['key1', 'key2']))

输出:

Python中的pandas.concat()函数

例子4:水平串联2个数据帧,axis=1 .

# importing the module
import pandas as pd
  
# creating the DataFrames
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'], 
                    'B': ['B0', 'B1', 'B2', 'B3']})
display('df1:', df1)
df2 = pd.DataFrame({'C': ['C0', 'C1', 'C2', 'C3'], 
                    'D': ['D0', 'D1', 'D2', 'D3']})
display('df2:', df2)
  
# concatenating
display('After concatenating:')
display(pd.concat([df1, df2],
                  axis = 1))

输出:

Python中的pandas.concat()函数

例子5:用ignore_index = True串联2个数据帧,这样新的索引值就会显示在串联的数据帧中。

# importing the module
import pandas as pd
  
# creating the DataFrames
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'], 
                    'B': ['B0', 'B1', 'B2', 'B3']})
display('df1:', df1)
df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'], 
                    'B': ['B4', 'B5', 'B6', 'B7']})
display('df2:', df2)
  
# concatenating
display('After concatenating:')
display(pd.concat([df1, df2], 
                  ignore_index = True))

输出:

Python中的pandas.concat()函数

实例6:将一个数据框架与一个系列连接起来。

# importing the module
import pandas as pd
  
# creating the DataFrame
df = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'], 
                    'B': ['B0', 'B1', 'B2', 'B3']})
display('df:', df1)
# creating the Series
series = pd.Series([1, 2, 3, 4])
display('series:', series)
  
# concatenating
display('After concatenating:')
display(pd.concat([df, series],
                  axis = 1))

输出:

Python中的pandas.concat()函数

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程