Mam małą dataframe (DF):

unique  a     b     c     d 
  0    None  None  None  None
  1    None  None  None  None
  2    None  0132  None  None
  3    None  None  None  0231
  4    None  None  None  None
  5    None  None  0143  None
  6    0121  None  None  None
  7    None  None  None  0432

Muszę zastąpić wszystkie wartości z NAN. Próbowałem zastosować df.fillna(np.NAN), ale nie zmienia wartości w komórkach, gdzie jest liczba. Jak zrobić wszystkie wartości zostały zastąpione? Dataframe powinien wyglądać tak:

unique  a     b     c     d 
  0    NaN   NaN   NaN   NaN
  1    NaN   NaN   NaN   NaN
  2    NaN   NaN   NaN   NaN
  3    NaN   NaN   NaN   NaN
  4    NaN   NaN   NaN   NaN
  5    NaN   NaN   NaN   NaN
  6    NaN   NaN   NaN   NaN
  7    NaN   NaN   NaN   NaN
4
yanadm 3 lipiec 2017, 12:27

3 odpowiedzi

Najlepsza odpowiedź

Użyj DataFrame konstruktor i indeks paszy i nazwy kolumn przez df:

df = pd.DataFrame(columns=df.columns, index=df.index)
3
jezrael 3 lipiec 2017, 09:33

Wystarczy dodać do basenu, to działa:

df[:] = np.nan
5
zipa 3 lipiec 2017, 09:36

Użyj loc, aby przypisać np.nan

df.loc[:] = np.nan

iloc również działa

df.iloc[:] = np.nan
6
piRSquared 3 lipiec 2017, 09:30