私はCSVをたくさん持っています。列の1つであるExtraParams
にはJSONオブジェクトが含まれています。特定のキーを使用して値を抽出したいのですが、CSVの60.000s何かの行を取得するのにかなり時間がかかります。スピードアップできますか?JSON列からの値の抽出が非常に遅い
counter = 0 #just to see where I'm at
order_data['NewColumn'] = ''
for row in range(len(total_data)):
s = total_data['ExtraParams'][row]
try:
data = json.loads(s)
new_data = data['NewColumn']
counter += 1
print(counter)
order_data['NewColumn'][row] = new_data
except:
print('NewColumn not in row')
は、私が使用してのtry-除く行の数は、私は、彼らが「区切り期待 『』」エラーでプログラムをクラッシュとして、JSONを台無しにされたと仮定し何を持っているので。
私が「遅い」と言うとき、私は60.000rowsの〜30分を意味します。
EDIT:それぞれのJSONに約35のキーと値のペアが含まれているとは限りません。
のようなラムダ関数を使ってJSONの例を共有できますか? – MedAli
大きなファイルに対してJSONもCSVも作成されません。データをデータベースにインポートし、そこから処理することを検討する必要があります。 JSONをサポートしているDBサーバーを使用することをお勧めします。 –
@KlausD。それはおそらく最高のアイデアだね。私は大規模なデータセットに対してPython/Pandasだけを使って効率的に誰かを見つけることができませんでした。 [This](https://stackoverflow.com/questions/14262433/large-data-work-flows-using-pandas)投稿は解決策を提供するかもしれません。 – Khaine775