新手在这里。尝试清理以下列的名称提出1992 | Unnamed: 2 | Unnamed: 3 | 1993 | Unnamed: 4| Unnamed: 5| 1994 | ... | 2015 | Unnamed: 22 | Unnamed: 23|
下一列是Male | Female | Population | Male | Female | Population ....
然后,这一行和其他的都与每个国家的人口有关
我尝试以下方法来清理所有未命名的列名
df.columns = map(lambda x: np.nan if (re.search(r'\bUnnamed:\s\d{1,2}\b', x)) else x, df.columns)
然后我想用pad方法天真地做一个fillna函数。
df_column_names = df_column_names.fillna(method='pad')
很明显那没用
我是否应该提取列名,将其作为 Dataframe 进行操作,并使用fillna(method='pad')
,然后神奇地将其与工作 Dataframe 合并?
似乎是非常笨拙的方式做到这一点。
1条答案
按热度按时间hjzp0vay1#
我想我有一个答案。我的解决方案是将上面的df.columns转换为pd.Series,然后运行fillna(method='pad)函数。结果,所有NaN都将填充前一年的值