Próbuję się nauczyć pand, ale jestem zaintrygowany poniższymi pytaniami. Chcę zastąpić NaNs jest ramką danych ze średnią wiersza. Stąd coś takiego, jak df.fillna(df.mean(axis=1))
powinno działać, ale z jakiegoś powodu mi się nie uda. Czy brakuje mi czegoś, coś, co robię źle? Jest tak, ponieważ nie jest zaimplementowany; zobacz link hereDataFame Pandy: Zastępowanie NaN średnicą rzędu
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
Jednak coś takiego wygląda działać dobrze
df.fillna(df.mean(axis=0))
Out[47]:
c1 c2 c3
0 1 4 7
1 2 5 8
2 3 6 9
Funkcjonalność nie jest jeszcze wykonane - [problem pozostaje otwarty] (https://github.com/pydata/pandas/issues/4514). –
OK, dziękuję za to! – Aenaon