【发布时间】:2021-07-30 05:26:45
【问题描述】:
我有一个空数据框
columns_name = list(str(i) for i in range(10))
dfa = pd.DataFrame(columns=columns_name, index=['A', 'B', 'C', 'D'])
dfa['Count'] = [10, 6, 9, 4]
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Count | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| A | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | 10 |
| B | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | 6 |
| C | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | 9 |
| D | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | 4 |
我想将Nan 值替换为与max(Count) - Current(max) 不同的符号。
所以,最终的结果会是这样的。
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | Count | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| A | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | 10 |
| B | NaN | NaN | NaN | NaN | NaN | NaN | - | - | - | - | 6 |
| C | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | - | 9 |
| D | NaN | NaN | NaN | NaN | - | - | - | - | - | - | 4 |
我被困在
dfa.at[dfa.index, [str(col) for col in list(range(dfa['Count'].max() - dfa['Count']))]] = '-'
并获得KeyError: 'Count'
【问题讨论】:
标签: python pandas dataframe numpy nan