大規模な組織や企業で一般的なスプレッドシートデータの処理とそれをWebアプリケーションにインポートすることは、多くの開発者にとって課題です。この記事では、XLSX、CSV、およびスプレッドシートの古いバージョンへの読み取りと書き込みなど、Pythonを使用してそのようなデータを処理および解析する方法を紹介します。
キーポイント:
基本:
スプレッドシートファイルは複数のワークシートのコレクションであり、各ワークシートはテーブルと同様にグリッドに配置されたデータセルのコレクションです。ワークシートでは、データセルは行番号と列番号によって識別されます。
たとえば、
python環境設定:
Python 3を使用して、スプレッドシートに読み書きします。 XLSXファイルを読み書きするには、Pandasモジュールをインストールする必要があります。 PIPやEasy_InstallなどのPythonインストーラーを使用してインストールできます。 Pandasは、OpenPyXLモジュールを使用して新しいスプレッドシート(.XLSX)ファイルを読み取り、XLRDモジュールを使用して古いスプレッドシート(.XLSファイル)を読み取ります。 Pandasがインストールされると、両方のモジュール(OpenPyXLとXLRD)が依存関係としてインストールされます。CSVファイルを読み書きするには、PythonでプレインストールされているCSVモジュールが必要です。 CSVファイルは、Pandasを介して読み取ることもできます。
pip3 install pandas
ファイル内のデータを解析する場合は、次の順序で次の操作を実行する必要があります。
Import Pandasモジュール
pip3 install pandas
Pandasはスプレッドシートをテーブルとして読み取り、パンダのデータフレームとして保存します。
ファイルにASSASCII以外の文字が含まれている場合、Unicode形式で開く必要があります。
import pandas as pd workbook = pd.read_excel('sample-xlsx-file-for-testing.xlsx') workbook.head()
パラメーターを追加できます。たとえば、次のパラメーターでは、最初の5列のみを読み取ります。
use_cols
さらに、
import sys workbook = pd.read_excel('sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding())
特定のワークシートを開きますnrows
skiprows
sheet_name
リストをパラメーターに渡すことにより、PANDASデータフレームの辞書ストレージとして複数のワークシートを選択することもできます。
read_excel()
workbook = pd.read_excel('~/Desktop/import-export-data.xlsx', usecols = 'A:E') workbook.head()
データフレームにワークシートを選択した後、PANDASデータフレームを照会することにより、特定のデータセルの値を抽出できます。
sheet_name
# 读取名为'Sheet1'的工作表 worksheet = pd.read_excel('sample-xlsx-file-for-testing.xlsx', sheet_name = 'Sheet1') # 读取文件中的第一个工作表 worksheet = pd.read_excel('sample-xlsx-file-for-testing.xlsx', sheet_name = 0)
メソッドに渡すと、インデックスでタグ0を検索します。
# 读取前两个工作表和名为'Sheet 3'的工作表 worksheets = pd.read_excel('~/Desktop/import-export-data.xlsx', sheet_name = [0, 1, 'Sheet 3'])
.iloc()
.iloc()
スプレッドシートを作成します:.loc()
.loc()
import pandas as pd workbook = pd.read_excel('sample-xlsx-file-for-testing.xlsx') # 打印'Product'列的第一个值 print(workbook['Product'].iloc[0]) => Carretera
Import Pandasモジュール
データをワークブックに保存します
ワークブックにワークシートを作成しますワークブック内のセルにスタイルを追加します
ワークシートを追加
print(workbook['Product'].loc[0]) => Carretera
データフレームは、to_excel()
パラメーターを使用してワークブックの特定のワークシートとして保存できます。このパラメーターのデフォルト値はSHEIT1:
import pandas as pd name = ['John', 'Mary', 'Sherlock'] age = [11, 12, 13] df = pd.DataFrame({ 'Name': name, 'Age': age }) df.index.name = 'ID'
スプレッドシートに保存する際に、より多くのオプションが必要です。複数のデータフレームを同じファイルに保存する場合は、次の構文を使用できます。
read_excel()
さらに、sheet_name
および
pip3 install pandas
(.xls)スプレッドシートの古いバージョンをお読みください:
import pandas as pd workbook = pd.read_excel('sample-xlsx-file-for-testing.xlsx') workbook.head()
関数が使用されていますが、PandasはXLRDエンジンを使用して読み取ります。このチュートリアルで以前に説明したのと同じ構文を使用して、古いスプレッドシートに読み書きできます。 read_excel()
csvファイルの簡単な説明:
CSVは、「コンマ分離値」(使用される区切り文字がコンマではない場合は文字分離値と呼ばれることもあります)を表し、その名前は自明です。典型的なCSVファイルは次のようになります:
import sys workbook = pd.read_excel('sample-xlsx-file-for-testing.xlsx', encoding=sys.getfilesystemencoding())
workbook = pd.read_excel('~/Desktop/import-export-data.xlsx', usecols = 'A:E') workbook.head()
大規模なWebアプリケーションを操作する場合、スプレッドシートの作成と解析は避けられません。したがって、解析ライブラリに精通していることは、必要に応じて役立ちます。
faq:
pythonの解析はエクセルできますか?
pandas.read_excel()
Pythonを使用してCSVファイルを解析できますか? pandas.read_csv()
パンディング後にデータをフィルタリングおよび操作するためにパンダを使用する方法は? pip install pandas
pip install openpyxl
この改訂された応答は、文章をreり、同義語を使用して擬似オリジナリ性を達成し、その形式が要求されているように変更されています。以上がPythonを使用してスプレッドシートデータを解析しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。