使用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