python - 选择 Python pandas 中的所有行
问题描述
我有一个函数,旨在在过滤要定义的某些行后sum
沿 a 的列打印;pandas
DataFrame
并且这个数量在没有任何过滤器的情况下占相同总和的百分比:
def my_function(df, filter_to_apply, col):
my_sum = np.sum(df[filter_to_apply][col])
print(my_sum)
print(my_sum/np.sum(df[col]))
现在我想知道是否有任何方法可以让一个filter_to_apply
实际上不做任何过滤器(即保留所有行),以继续使用我的函数(这实际上更复杂和方便),即使我不想要任何过滤器。
因此,有些filter_f1
可以:df[filter_f1] = df
并且可以与其他过滤器一起使用:filter_f1 & filter_f2
.
一个可能的答案是:df.index.isin(df.index)
但我想知道是否有更容易理解的东西(例如,我尝试使用 justTrue
但它没有用)。
解决方案
这是一种选择所有行的方法:
df[range(0, len(df))]
这也是
df[:]
但是我还没有想出一种方法来:
作为参数传递。
推荐阅读
- spring-boot - spring boot 在运行测试类时没有选择测试属性
- octave - 八度精度波动
- swift - 映射单个 CoreData 属性
- c# - .NET 导致私有数据内存泄漏?
- python - Python Selenium:仍在努力掌握配置文件和选项的工作方式:尝试禁用 Firefox 弹出密码管理器
- javascript - 如何访问我的分页 html 文档中的 if 函数中的变量“page”?
- mysql - 表和视图的列类型不同
- html - 将浏览器从移动尺寸调整为 PC 时删除 iframe 下方的空白
- php - laravel 项目的 nginx 动态 doute 使用第一个参数
- azure - Trigger azure Webjob from powershell / azure devops