本文介绍了截断 pandas DataFrame的行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

创建示例数据框的代码:

Code to create sample dataframe:

Sample = [{'account': 'Jones LLC', 'Jan': 150, 'Feb': 200, 'Mar': [[.332, .326], [.058, .138]]},
     {'account': 'Alpha Co',  'Jan': 200, 'Feb': 210, 'Mar': [[.234, .246], [.234, .395], [.013, .592]]},
     {'account': 'Blue Inc',  'Jan': 50,  'Feb': 90,  'Mar': [[.084, .23], [.745, .923], [.925, .843]]}]
df = pd.DataFrame(Sample)

可视化的示例数据框:

 df:
  account        Jan      Feb          Mar
Jones LLC  |     150   |   200    | [.332, .326], [.058, .138]
Alpha Co   |     200   |   210    | [[.234, .246], [.234, .395], [.013, .592]]
Blue Inc   |     50    |   90     | [[.084, .23], [.745, .923], [.925, .843]]

我正在寻找一个公式来截断"Mar"列,以便将任何形状大于(2,x)的行都截断,从而得到以下df

 df:
  account        Jan      Feb          Mar
Jones LLC  |     150   |   200    | [.332, .326], [.058, .138]
Alpha Co   |     200   |   210    | [[.234, .246], [.234, .395] 
Blue Inc   |     50    |   90     | [[.084, .23], [.745, .923]

推荐答案

使用.apply函数并结合lambda运算符,可以轻松地完成单元级别的操作:

Operations on a cell level can easily be done using .apply function, combined with lambda operator:

df["Mar"] = df["Mar"].apply(lambda x: x[:2])

这篇关于截断 pandas DataFrame的行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-20 21:27