小编Rya*_*yan的帖子

如何以不同的速率从 Pandas 数据框中对每个组进行采样

我有一个数据框,其中包含有关我希望从中生成样本的总体信息。我还有一个数据框sample_info,它详细说明了population我的示例中需要的数据框中每个组的数量。我已经开发了一些代码来实现我的需要,但鉴于我正在使用的大型数据集,它的运行速度比我想要的要慢。

有没有办法对总体框架进行分组并将抽样应用于组,而不是像我在下面所做的那样循环遍历它们?

import pandas as pd

population = pd.DataFrame([[1,True],[1,False],[1,False],[2,True],[2,True],[2,False],[2, True]], columns = ['Group ID','Response'])

    Group ID    Response
0   1           True
1   1           False
2   1           False
3   2           True
4   2           True
5   2           False
6   2           True

sample_info = pd.DataFrame([[1,5],[2,6]], columns = ['Group ID','Sample Size'])

output = pd.DataFrame(columns = ['Group ID','Response'])

    Group ID    Sample Size
0   1           5
1   2           6


for index, row in sample_info.iterrows():    
        output = output.append(population.loc[population['Group ID'] == row['Group ID']].sample(n=row['Sample Size'], replace …
Run Code Online (Sandbox Code Playgroud)

python sampling pandas

6
推荐指数
1
解决办法
1165
查看次数

如何使用熊猫按字母顺序将数据分类到类别中?

我有一个数据框,其中包含一个包含一系列字符串的列

books = pd.DataFrame([[1,'In Search of Lost Time'],[2,'Don Quixote'],[3,'Ulysses'],[4,'The Great Gatsby'],[5,'Moby Dick']], columns = ['Book ID', 'Title'])

   Book ID                   Title
0        1  In Search of Lost Time
1        2             Don Quixote
2        3                 Ulysses
3        4        The Great Gatsby
4        5               Moby Dick
Run Code Online (Sandbox Code Playgroud)

以及边界的排序列表

boundaries = ['AAAAAAA','The Great Gatsby', 'zzzzzzzz']
Run Code Online (Sandbox Code Playgroud)

我想使用这些边界将数据框中的值分类为按字母顺序排列的bin,类似于pd.cut()对数字数据的工作方式。我的愿望输出如下所示。

   Book ID                   Title                          binning
0        1  In Search of Lost Time   ['AAAAAAA','The Great Gatsby')
1        2             Don Quixote   ['AAAAAAA','The Great Gatsby')
2        3                 Ulysses  ['The Great Gatsby','zzzzzzzz') …
Run Code Online (Sandbox Code Playgroud)

python python-3.x pandas

3
推荐指数
1
解决办法
48
查看次数

标签 统计

pandas ×2

python ×2

python-3.x ×1

sampling ×1