这是我正在使用的代码。我首先将Dataframe按状态分组。然后,遍历state,如果第5列的值为null,则将第5列的值指定为等于第2列的值。
gb = df.groupby('state')
alldfs = [gb.get_group(x) for x in gb.groups]
for state in range(0, len(alldfs)):
for i in range(0, (alldfs[state].shape[0])):
if pd.isnull(alldfs[state].iloc[i, 5]):
alldfs[state].iloc[i, 5] = alldfs[state].iloc[i, 2]
我收到下面的警告信息。注意,这是一个警告,而不是一个错误:它在我的本地机器上工作,但是当通过docker环境运行时,整个脚本返回一个奇怪的结果。我认为解决这个警告可能会解决这个问题。
谢谢。
settingwithcopywarning:试图在Dataframe的切片副本上设置值
请参阅文档中的注意事项:https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-vs-a-copy self.\u setitem\u带索引器(indexer,value)
暂无答案!
目前还没有任何答案,快来回答吧!