热线电话:13121318867

登录
2019-02-14 阅读量: 675
在Pandas中定义一个函数

我知道有一种方法可以定义一个函数来使代码更清晰,但我不知道如何去做。

noshow = len((df[

(df['Gender'] == 'M') \

& (df['No_show'] == 'Yes') \

& (df['Persons_age'] == 'Child')

]))

noshow

有多个性别和多个No_show答案和多人的年龄,我不想写出每个人的代码。

我已经获得了单个函数的代码,但没有用于多次迭代。

def print_noshow_percentage(column_name, value, percentage_text):

total = (df[column_name] == value).sum()

noshow = len((df[(df[column_name] == value) & (df['No_show'] == 'Yes')]))

print(int((noshow / total) * 100), percentage_text)

解决办法:

以下代码将为您提供有关百分比计数的所有信息。

counts = df.groupby(['Gender', 'Persons_age'])['No_show'].value_counts(normalize=True)

现在你需要决定如何处理它。您可以遍历数据框打印每一行,或者您可以找到特定的组合,或者您可以打印出整个内容。

一般来说,寻找内置方法比尝试在pandas之外构建函数更好。有很多不同的方法可以做,检查文档是一个很好的起点。

0.0000
3
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子