下面有一个数据集.这里我需要将子集分组在列中,并使用模式方法填充缺失的值.这里特别需要填充UK中的Tom的缺失的值.因此,我需要对UK中的Tom进行分组,在该组中,需要将重复次数最多的值添加到缺少的值中.

datammain

下面的图显示了我需要如何执行GROUP BY.从下面的矩阵中,我需要使用模式替换所有的NAN值.

new

所需的输出:

output

附加数据集

Name location Value
Tom  USA      20
Tom  UK       Nan
Tom  USA      Nan
Tom  UK       20
Jack India    Nan
Nihal Africa  30
Tom   UK      Nan
Tom   UK      20
Tom   UK      30
Tom   UK      20
Tom   UK      30
Sam   UK      30
Sam   UK      30

推荐答案

try :

df = df\
    .set_index(['Name', 'location'])\
    .fillna(
        df[df.Name.eq('Tom') & df.location.eq('UK')]\
            .groupby(['Name', 'location'])\
            .agg(pd.Series.mode)\
            .to_dict()
    )\
    .reset_index()

输出:

     Name location Value
0     Tom      USA    20
1     Tom       UK    20
2     Tom      USA   NaN
3     Tom       UK    20
4    Jack    India   NaN
5   Nihal   Africa    30
6     Tom       UK    20
7     Tom       UK    20
8     Tom       UK    30
9     Tom       UK    20
10    Tom       UK    30
11    Sam       UK    30
12    Sam       UK    30

Python相关问答推荐

在matplotlib中使用不同大小的标记顶部添加批注

如何在Great Table中处理inf和nans

Python 3试图访问在线程调用中实例化的类的对象

为什么t sns.barplot图例不显示所有值?'

如何强制向量中的特定元素在Gekko中处于优化解决方案中

如何在Gekko中处理跨矢量优化

pytest、xdist和共享生成的文件依赖项

将字节序列解码为Unicode字符串

使用pythonminidom过滤XML文件

函数()参数';代码';必须是代码而不是字符串

有什么方法可以在不对多索引DataFrame的列进行排序的情况下避免词法排序警告吗?

使用OpenPYXL切换图表上的行/列

在PySpark中,可以从数组中获取任意数量的元素吗?

优化将索引分配给极轴上的拆分数据组

在Polars中查找给定列的范围内的最大值?

考虑线宽的两个并排条形图

如何在子窗口中正确设置和获取tkinter旋转框的值?

如何在NumPy中从一维时间序列建立3D矩阵?

如何在连接密钥的特定条件下连接两个数据帧

如何使用建议值设置不区分大小写的模型