2
創建指標列我有熊貓一個非常簡單的數據幀,它看起來像這樣填充缺失值設置爲0,並在熊貓
testdf = [{'name' : 'id1', 'W': np.NaN, 'L': 0, 'D':0},
{'name' : 'id2', 'W': 0, 'L': np.NaN, 'D':0},
{'name' : 'id3', 'W': np.NaN, 'L': 10, 'D':0},
{'name' : 'id4', 'W': 75, 'L': 20, 'D':0}
]
testdf = pd.DataFrame(testdf)
testdf = testdf[['name', 'W', 'L', 'D']]
:
| name | W | L | D |
|------|-----|-----|---|
| id1 | NaN | 0 | 0 |
| id2 | 0 | NaN | 0 |
| id3 | NaN | 10 | 0 |
| id4 | 75 | 20 | 0 |
我的目標很簡單:
1)我想通過簡單地將它們替換爲0來將所有缺失值進行歸一化。
2)接下來,我想創建具有0或1的指示符列,以指示新值(0)確實是由插補創建的流程。
它可能更容易只顯示而不是用文字解釋:
| name | W | W_indicator | L | L_indicator | D | D_indicator |
|------|----|-------------|----|-------------|---|-------------|
| id1 | 0 | 1 | 0 | 0 | 0 | 0 |
| id2 | 0 | 0 | 0 | 1 | 0 | 0 |
| id3 | 0 | 1 | 10 | 0 | 0 | 0 |
| id4 | 75 | 0 | 20 | 0 | 0 | 0 |
我的嘗試都失敗了,因爲我被卡住試圖改變所有非NaN值的一些佔位符值,然後更改所有的NaN到一個0,然後將佔位符的值改回NaN等等等等。它太雜亂了。然後我不斷收到各種切片警告。面具變得雜亂無章。我敢肯定,比起我那些不可靠的啓發式方法,有更好的方法來做到這一點。
如果我的回答很有幫助,別忘了接受它。謝謝。 (也可以檢查鏈接的問題和很好的答案,並把它們加起來) – jezrael
是的先生我在上面 –