Sto cercando di imparare i panda ma sono rimasto perplesso con quanto segue per favore. Voglio sostituire NaNs è un dataframe con la media delle righe. Quindi qualcosa come df.fillna(df.mean(axis=1))
dovrebbe funzionare, ma per qualche motivo fallisce per me. Mi sto perdendo qualcosa per favore, qualcosa che sto sbagliando? È perché non è implementato; vedi link herePandas Dataframe: sostituzione NaN con riga media
import pandas as pd
import numpy as np
pd.__version__
Out[44]:
'0.15.2'
In [45]:
df = pd.DataFrame()
df['c1'] = [1, 2, 3]
df['c2'] = [4, 5, 6]
df['c3'] = [7, np.nan, 9]
df
Out[45]:
c1 c2 c3
0 1 4 7
1 2 5 NaN
2 3 6 9
In [46]:
df.fillna(df.mean(axis=1))
Out[46]:
c1 c2 c3
0 1 4 7
1 2 5 NaN
2 3 6 9
Tuttavia qualcosa di simile sembra funzionare bene
df.fillna(df.mean(axis=0))
Out[47]:
c1 c2 c3
0 1 4 7
1 2 5 8
2 3 6 9
che la funzionalità non è ancora implementato - il [questione rimane aperta] (https://github.com/pydata/pandas/issues/4514). –
Ok, grazie per questo! – Aenaon