我是pandas的新手,并尝试使用列值匹配的df2替换df1中的列值(NaN)。并面临以下错误。
public class Meal
{
public int MealId {get;set;}
// ...
public int? PictureId {get;set;}
public virtual Picture Picture {get;set;}
}
我有两个具有300万条记录的数据框,并且在执行以下操作时遇到以下错误:
ValueError:无法从重复的轴重新索引
答案 0 :(得分:6)
您轻松填充Nan的方法是使用fillna
函数。就您而言,如果您将dfs作为(请注意索引)
unique_col Measure
0 944537 NaN
1 7811403 NaN
2 8901242114307 1.0
unique_col Measure
0 944537 18.0
1 7811403 12.0
2 8901242114307 17.5
您可以简单地
>>> df.fillna(df2)
unique_col Measure
0 944537 18.0
1 7811403 12.0
2 8901242114307 1.0
如果索引与上面的不相同,则可以将它们设置为相同的并使用相同的功能
df = df.set_index('unique_col')
df.fillna(df2.set_index('unique_col'))