【发布时间】:2022-01-21 12:45:37
【问题描述】:
我正在调用一个返回 JSON 文件的 API。当我将 JSON 文件解析为 pandas 数据框时,它会返回下表:
| Level 1 | Level 2 | Level 3 |
|---|---|---|
| Total | Category1 | Category 1.2 |
| Total | None | None |
| Total | Category 2 | None |
| Total | Category 2 | Category 2.1 |
| Total | Category 3 | None |
| Total | Category 3 | Category 3.1 |
如您所见,类别分为三个级别。我想用之前列中的值替换列中的“无”值。数据框应如下所示:
| Level 1 | Level 2 | Level 3 |
|---|---|---|
| Total | Category1 | Category 1.2 |
| Total | Total | Total |
| Total | Category 2 | Category 2 |
| Total | Category 2 | Category 2.1 |
| Total | Category 3 | Category 3 |
| Total | Category 3 | Category 3.1 |
我已经尝试了一些循环和以下代码:
for i in range(len(df.columns)):
df.iloc[:,i] = np.where(df.iloc[:,i] == "None",df.iloc[:,i+1],df.iloc[:,i])
但这不起作用。我怎样才能做到这一点?
谢谢!
【问题讨论】:
标签: python python-3.x pandas dataframe