使用Pandas groupby连接来自多行的字符串


Pandas Dataframe.groupby()方法用于根据某些条件将数据分为几组。分组的抽象定义是提供标签到组名的映射。

要使用Dataframe.groupby()连接多行中的字符串,请执行以下步骤:

  1. 使用需要连接其属性的Dataframe.groupby()方法对数据进行分组。
  2. 通过使用join函数连接字符串,并使用lambda语句转换该列的值

我们将使用具有2列CSV文件,该文件的内容如下图所示:

示例1:我们将在分支列中具有相同名称的数据进行连接。

  • Python3
filter_none

 

 

亮度_4

# import pandas library
import pandas as pd
  
# read csv file
df = pd.read_csv( "Book2.csv" )
  
# concatenate the string
df[ 'branch' ] = df.groupby([ 'Name' ])[ 'branch' ].transform( lambda x : ' ' .join(x))
  
# drop duplicate data
df = df.drop_duplicates()   
  
# show the dataframe
print (df)

输出:

示例2:我们也可以在多列上执行Pandas groupby。

我们将使用具有3列CSV文件,该文件的内容如下图所示:

在名称和年份列上应用分组依据

  • Python3
filter_none

 

 

亮度_4

# import pandas library
import pandas as pd
  
# read a csv file
df = pd.read_csv( "Book1.csv" )
  
# concatenate the string
df[ 'branch' ] = df.groupby([ 'Name' , 'year' ])[ 'branch' ].transform(
                                               lambda x: ' ' .join(x))
  
# drop duplicate data
df = df.drop_duplicates()          
  
# show the dataframe
df

输出:

在多列上分组


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM