1
現在の行がすべてnan
である場合にのみ、前の行にpandas dfを入力します。 これは、fillna
が賢明である必要がある一方で、要素が賢明に機能するため、fillna(method='ffill', limit = 1)
が私のケースでは機能しないことを意味します。Forward fill Pandas dfは、行全体がNanである場合のみ
この作業を達成するためのよりエレガントな方法は、以下の手順よりもありますか?
s = df.count(axis = 1)
for d in df.index[1:]:
if s.loc[d] == 0:
i = s.index.get_loc(d)
df.iloc[i] = df.iloc[i-1]
入力
v1 v2
1 1 2
2 nan 3
3 2 4
4 nan nan
出力
v1 v2
1 1 2
2 nan 3
3 2 4
4 2 4
なぜマスクの条件で 'df.notnull()。all(axis = 1)'を指定するのですか? – SirC
これは、 'NAN'の行のみに一致し、ffillは動作しないためです。 – jezrael
いくつかの問題がありますか?解決策は機能しませんか? – jezrael