使用 'filter' 关键字和 lambda 函数过滤熊猫数据帧中的特定列



如何使用'filter'关键字和lambda函数来过滤pandas DataFrame中的特定列?

import pandas as pd数据= [{"语言":"Python","增长百分比":56%}, {"语言":"Java","增长百分比":34%}, {"语言":"C","增长百分比":25%}, {"语言":"c++","增长率":12%}, {"语言":"去","增长率":5%})df = pd.DataFrame(data)

f = lambda x: x['Percent grow']>30.df.filter (f)

IIUC,您希望pandas.DataFrame.loc具有布尔索引:

df.loc[df["Percent grow"].gt(30)]

pandas.DataFrame.filter表示,一种方法是:

(
df
.set_index("Percent grow")
.pipe(lambda x: x.filter([x for x in x.index if x>30], axis=0))
.reset_index()
.reindex(df.columns, axis=1)
)

输出:

Language  Percent grow
0   Python            56
1     Java            34

最新更新