2017-06-27 4 views
1

私は自分のdataFramesにpython/excel/pandasを使用するのが快適です。私はSQLやデータベース言語を知らない。Python pandas large database with excel

私は約4000の異なるExcelファイルを含む新しいプロジェクトを開始しようとしています。私は、ファイルをすべての4000ファイルのデータフレームとして保存して開いて、それらのファイルで数学を実行するように呼び出します。これには、合計、線形回帰、およびその他の通常の統計値などの多くの計算が含まれます。

私の質問は、これを5-10のファイルで問題なく実行する方法を知っています。私はメモリやプログラミングの問題に遭遇するつもりですか?ファイルは約300〜600kBです。私は、データを保持するだけでExcelの機能を使用しません。 4,000個の別々のファイルまたは4,000個のタブがある方が良いでしょうか。それとも、コンピュータが問題なく処理できるものですか?以前から多くのデータを扱っていなかったことに感謝しています。私が本当に始める前に私が本当にうんざりしているかどうかを知りたいのですが。

答えて

2

あなたは間違いなくデータベースを使いたいと思います。 2GB近くの生データでは、コンピュータを窒息させることなく、あまりにも多くのことを行うことはできません。

あなたがPythonとpandasに心地よいと感じたら、私はあなたが非常に迅速にSQLを学ぶことができることを保証します。基本的な構文は1時間で学習することができ、将来の仕事、それは非常に便利なスキルのためにそれを学ぶことを後悔しません。

PostgreSQLをローカルにインストールし、SQLAlchemyを使用してデータベース接続(またはエンジン)を作成することをお勧めします。それで、パンダさんが実際にdf.to_sqlpd.read_sqlを持っていることを聞いて喜んで、必要に応じてデータをプッシュしたり、プルダウンしたりするのは簡単です。なぜならもし私が最後if_existsの=「APPEND」を追加

from sqlalchemy import create_engine 
my_db = create_engine('postgresql+psycopg2://username:[email protected]:5432/database_name') 
df.to_sql('table_name', my_db, if_exists='append') 

:また、SQLは、SQLデータベースへの接続や書き込み、合計するなど

を数えるようにしたい任意の基本的な数学をするのと同じくらい簡単です行うことができます最も可能性の高いテーブルに4000をすべて追加します。

+0

ご協力いただきありがとうございます。 – Atropos