熊猫GroupBy通过大型数据框

时间:2019-09-22 17:54:05

标签: python pandas dataframe

我有一个包含150列的数据框。在150中,有15列字符串类型,其余均为浮点数。

数据框包含15条字符串列组合的相同记录,其余值可以不同。我想对这15个字符串列进行 groupby ,并对所有浮点列求和。

由于数据帧很大,我如何在Python中轻松地做到这一点而无需在 groupby 语句中指定每个列的名称。

2 个答案:

答案 0 :(得分:1)

工作提示。您可以使用此代码过滤字符串类型的列。

string_columns = list()    
for col in df.columns:
    if df[col].dtypes == 'O':
        string_columns.append(col)

最后,string_columns将包含具有Object数据类型的列名,可用于您的groupby函数。

答案 1 :(得分:1)

使用列表理解功能1首先过滤类型为object type的列,然后按功能使用组中的cols

output = "none present"
if (result.first){
   output= "first present"
   if(result.last){
      output= "both present"
    }
} else if (result.last) {
output= "last present"
}