pandas - 我们可以根据聚合标准对熊猫数据框进行采样吗
问题描述
a = df[df.contribution <= 0.1].sample(frac = 0.1)
我需要做这样的事情:采取任何行样本,但行的总贡献应该小于 100
a = df.sample(sum(df['contribution'])<100)
解决方案
想法是您希望样本包含更多的记录而不是更少的记录。可悲的是使用循环。
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randint(1,35,(15,1)),columns = ['contribution'])
for i in reversed(range(len(df))):
if df['contribution'].sample(i).sum() < 100:
print df
break
推荐阅读
- c# - 在 EF Core 中保存实体时识别循环依赖
- php - 标准类数组中的PHP多个元素(JSON)
- raku - Binding of private attributes: nqp::bindattr vs :=
- visual-studio-code - 如何为 VSCode 市场中的扩展提取标签?
- google-cloud-platform - 使用接收器导出日志时的标头配置
- javascript - Javascript - XMLHttpRequest 需要 2 次处理
- java - 在 jtextarea java 中更改字体时出错
- ajax - 如何实现 Zend Framework 3 + Ajax 分页?
- react-native - 升级 React Native 后出现“verifyReleaseResources”错误
- sql - SQL Join 两个 a 条件不匹配的表