python - 用 Pandas 数据框中的唯一引用替换 NaN
问题描述
我有一个缺少唯一引用的数据框,我想在数据集中为这些生成唯一引用。我想我会为此使用索引/行值,因为它是一个增量数字,但我只需要任何改变的数字。
到目前为止,我已经设法创建了一个列来获取索引值(当然我可能不必这样做,但这是我最接近让它工作的):
# Create column with the index values so they can be used to create unique refs for missing planning references
ah_df['Index Values'] = ah_df.index.values
然后我在尝试替换 NaN 时尝试引用它,为我的每个新引用提供前缀“Unknown Ref”:
# Creates unique references to replace the blanks
ah_df.loc[ah_df["Planning Reference"].isnull(),'Planning Reference'] = "Unknown Ref" + str(ah_df['Index Values'])
就它给我一些东西而言,这个“有效” ,但索引位并没有给我预期的增量数字。相反,我得到了这个:
“未知 Ref0 0\n1 1\n2 2。”
我究竟做错了什么?
谢谢 :)
解决方案
要转换为字符串,请使用Series.astype
:
ah_df.loc[ah_df["Planning Reference"].isnull(),'Planning Reference'] = "Unknown Ref" + ah_df['Index Values'].astype(str)
或者不需要新列,请使用Index.astype
:
ah_df.loc[ah_df["Planning Reference"].isnull(),'Planning Reference'] = "Unknown Ref" + ah_df.index.astype(str)
0
如果只需要NaN
s 的计数器:
m = ah_df["Planning Reference"].isnull()
ah_df.loc[m,'Planning Reference'] = [f"Unknown Ref{i}" for i in range(m.sum)]
推荐阅读
- php - Google Calendar API 不适用于私人日历
- css - 消极的替代品
- c++ - glew 导致屏幕在红色和黑色之间闪烁。高兴的作品
- php - 如何在没有斜杠的情况下访问目录的 index.php 并且不获得 301 重定向(NGinx)
- javascript - 页面加载时自动滚动图像,悬停时停止
- dart - 如何向 Flutter 应用添加水平卡片轮播视图
- python - Parsimonious ParseError
- tensorflow - 用于 kubernetes 的多用户和 GPU 的 JupyterHub
- here-api - (看似)Here's Public Transit API 中未记录的交通方式
- pandas - Pandas 通过从另一个数据框中查找列名和值来更新数据框