2017-07-31 9 views
0

私は、L1 ... Lnの範囲のN個のデータフレームを持っています。Python Pandasでループを使ってデータフレームを変更する方法は?

特定の条件に関連する行を維持するためにそれらを変更したいと思います。

私は、次のループ走っ:

for df in [L1,...,Ln]: 
    df=df.ix[df['Sector']=='Services'] 

を、私は、各データフレームを呼び出したときにしかし、私はそれに応じて交換されていない見つけます。ループを使用して一連のデータフレームを変更するにはどうすればよいですか?

私はPython 2.7を使用しています。

答えて

1

あなたは新しいものと古いデータフレームを上書きする必要があります。

all_dfs = [L1,...,Ln] 
# iterate through the dataframes one by one 
# keep track of the order in index and the content in df 
for index, df in enumerate(all_dfs): 
    # modify the current dataframe df 
    # then overwrite the old one in the same index. 
    all_dfs[index]= df.ix[df['Sector']=='Services'] 
+0

私は現在、DF = DF ...を通じてそうではないだろうか? – runawaykid

+1

@runawaykidあなたはローカル変数dfを上書きしています。リスト内の実際のdfは表示されません。 – MedAli

+0

私は、L1を呼び出すときに、[L1、... Ln] = all_dfsという行を追加する必要があることが分かりました。まだ元のデータフレームではない場合 – runawaykid

関連する問題