私はdict d = {}
を作成し、Webページをループし、各ページのデータをd[i]
に格納します。各ページのデータは約20列と100行のデータです。終了したら、私は任意の数の索引を持つことができます。私が持っている問題は、いくつかのページが重複していることです。したがってd[3]
とd[4]
は重複している可能性があります。変換不明個々のデータフレームへのDictインデックスの数
私は最終的にはそうのようなデータフレームに各インデックスに変換:
df1 = d[0]
df1 = pd.DataFrame(df1[0])
私はインデックスの数を知っていれば、私は次のように1つのデータフレームに変換する方法を知っている:
dfs = len(d)
#Union dataframes
if dfs == 4:
df1 = d[0]
df2 = d[1]
df3 = d[2]
df4 = d[3]
df1 = pd.DataFrame(df1[0])
df2 = pd.DataFrame(df2[0])
df3 = pd.DataFrame(df3[0])
df4 = pd.DataFrame(df4[0])
df = pd.concat([df1,df2,df3,df4])
しかし、 、私はいつもその数を知らない。不明な数のインデックスに対してこれを行い、重複したページを削除する方法はありますか?私は可変オブジェクト名を使ってforループを作成することを考えていましたが、おそらくそれについて行く最良の方法ではないことは分かっています。
私はそのコードを実行すると、私は次のエラーを取得する: 'DF = pd.concat(リスト(マップ(pd.DataFrame、私は[0] d.valuesのI()))のための)' ^ 'SyntaxError:ジェネレータの式は唯一の引数でなければカッコで囲む必要があります.' –
@ d84_n1nj4 Fixed –
Webページからデータを引き出す際にループ内で実行するか、複数のインデックスを持つdictを作成した後?私はそれを後に走らせ、 'df'は私に' d [0] 'の等価物を与えます。 –