我得到了下表,每人重復的值:
| 顧客 | 簡 | 二月 | 三月 | 四月 | 君 | 七月 |
|---|---|---|---|---|---|---|
| 亞當 | 345 | 345 | 345 | 345 | 345 | |
| 蘇珊 | 645 | 645 | 645 | 645 | ||
| 保羅 | 153 | 153 | 153 | 153 |
您可以看到第一個值是實際值。所以那個表應該是這樣的:
| 顧客 | 簡 | 二月 | 三月 | 四月 | 君 | 七月 |
|---|---|---|---|---|---|---|
| 亞當 | 345 | |||||
| 蘇珊 | 645 | |||||
| 保羅 | 153 |
解決此表的更好方法是什么?
資料:
import numpy as np
import pandas as pd
data = {'Costumer': ['Adam', 'Susan', 'Paul'],
'Jan': [345.0, np.NaN, np.NaN],
'Feb': [345.0, np.NaN, 153.0],
'Mar': [345.0, 645.0, 153.0],
'Apr': [345.0, 645.0, 153.0],
'Jun': [345.0, 645.0, 153.0],
'Jul': [np.NaN, 645.0, np.NaN]}
df = pd.DataFrame(data)
uj5u.com熱心網友回復:
您可以mask重復值:
out = (df.mask(df.apply(lambda x: x.duplicated(), axis=1)).fillna(''))
輸出:
Costumer Jan Feb Mar Apr Jun Jul
0 Adam 345.0
1 Susan 645.0
2 Paul 153.0
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/439395.html
