我有一个简单的数据框,需要生成一个透视表:
d = {'one' : ['A', 'B', 'B', 'C', 'C', 'C'], 'two' : [6., 5., 4., 3., 2., 1.], 'three' : [6., 5., 4., 3., 2., 1.], 'four' : [6., 5., 4., 3., 2., 1.]}
df = pd.DataFrame(d)
pivot = pd.pivot_table(df,index=['one','two'])
我想从结果透视对象的'one'列中的每个不同元素随机抽样1行。(在此示例中,'A'将始终被抽样,而'B'和'C'有更多的选项。)我刚开始使用pandas 0.18.0版本,并且知道.sample方法。我尝试使用类似以下代码的.groupby方法应用抽样函数:
grouped = pivot.groupby('one').apply(lambda x: x.sample(n=1, replace=False))
我在尝试对这个主题进行变化时引发了KeyError错误,所以我认为现在是时候给这个看似简单的问题带来新的视角了...
谢谢任何帮助!