大熊猫集群采样
原文:https://www.geeksforgeeks.org/cluster-sampling-in-pandas/
采样是一种方法,我们从一个大的群体中收集或选择一个小的数据集合,而不需要找到集合中每个个体的意义。我们正在从人群中进行数据采样,因为我们无法从整个人群中收集数据。如果我们完成了抽样,那么我们就可以将人口控制在可管理的范围内,并有助于将由于人口数量庞大而导致的误差降到最低。
我们可以用几种方法做抽样,这里只讨论整群抽样:
聚类采样:
整群抽样是一种概率抽样,在这种抽样中,总体的每一个元素都被同等地选择,我们使用总体的子集作为抽样部分,而不是使用单个元素进行抽样。
将群体划分为子集或亚组,这些子集或亚组被认为是聚类,并且从聚类的数量中,我们选择要执行的下一步的单个聚类。
现在查看对群体执行聚类采样所采取的步骤:
第一步:定义和识别目标人群。
这是我们进行采样的第一步,我们必须从人群中明确选择目标区域。
为了用通俗易懂的语言理解,我们举一个整数的例子,整数是可以写成没有小数形式的数字,就像所有的负数和正数(-1,-4,-8,3,5,2,0……)一样,所以我们把所有的整数作为我们的数据,从这些数据中我们必须选择我们的目标区域来执行采样。从这些整数数据,我们可以瞄准所有的正数或所有的负数。
这里我们假设我们的目标区域都是正数,这意味着我们将整数数据中的所有正数作为样本。
第二步:取样方法。
这里我们使用概率聚类抽样,因为总体中的每个元素都有同等的选择机会。
第三步:将样本分成簇。
在我们选择采样方法后,我们将样本划分为聚类,这是执行聚类采样的一个重要部分,我们必须创建一个高质量的聚类,因为它们在采样后会产生更好的准确性。我们提醒,我们正在生产的集群具有更好的影响,这意味着它们对我们的人口有很好的代表性。集群必须平均和相似地分布,因为它们之间没有重复。理想情况下,每个集群应该是整个人口的一个小型代表。
第四步:采集数据。
在执行上述步骤后的最后一步中,我们从样本中收集所需的数据。
我们举一个集群抽样的例子,其中我们取 1 到 n 个自然数组成集群,然后从这个集群中,我们选择随机的单个集群进行抽样。
N=16,所以我们从 1 到 16 中抽取样本,然后从随机的聚类中选择一个聚类作为样本,每个聚类有 4 个数字。
例 1:
蟒蛇 3
# import pandas
import pandas as pd
# import numpy
import numpy as np
# creating dictionary of data
data = {'N_numbers':np.arange(1,16)}
# creating dataframe
df = pd.DataFrame(data)
# sample of data
samples = df.sample(4)
print(samples)
输出:
4 个数字的随机样本形成 1-16 个数字的集群。
在这个输出中,我们看到,从具有随机数的 N-numbers 列中,顺便说一下,这是我们的随机集群,包含 4 个样本。借助样本()设置单个聚类呈现的样本数量。
例 2:
蟒蛇 3
# code
# importing modules
import pandas as pd
import numpy as np
#creating dictionary of data
dic_data = {'employee_id':np.arange(1,21),
'value':np.random.randn(20)}
# creating DataFrame from dictonary
df = pd.DataFrame(dic_data)
print(df)
输出:
在这里,我们创建了包含 20 个员工 id 的 DataFrame df,每个 id 都有随机值。从数据集 df 、中,我们取一个包含特定 4 个随机样本的随机聚类。
代码:
蟒蛇 3
# code
# import pandas
import pandas as pd
# import numpy
import numpy as np
# creating samples
samples = df.sample(4).sort_values(by='employee_id')
# show samples
print(samples)
输出:
这些是随机选择的员工
正如您在我们的输出中看到的,我们收集了 4 个随机员工的数据,其中包含他们的 employee_id 和值。首先,我们创建一个样本变量,然后给它分配一个 4 个随机雇员的样本,作为我们的数据。