ホームページ  >  記事  >  バックエンド開発  >  Python の 8 つのデータ インポート方法、あなたはそれらをマスターしましたか?

Python の 8 つのデータ インポート方法、あなたはそれらをマスターしましたか?

WBOY
WBOY転載
2023-04-19 12:52:031685ブラウズ

ほとんどの場合、データのインポートには NumPy または Pandas が使用されるため、開始する前に次のコマンドを実行します。

import numpy as np
import pandas as pd

ヘルプを取得する 2 つの方法

一部の関数メソッドについてはよくわかりませんが、現時点では、Python では Python オブジェクトをすばやく使用するためのヘルプ情報が提供されています。

Numpy の info メソッドを使用します。

np.info(np.ndarray.dtype)

Python の 8 つのデータ インポート方法、あなたはそれらをマスターしましたか?

Python 組み込み関数

help(pd.read_csv)

Python の 8 つのデータ インポート方法、あなたはそれらをマスターしましたか?

1 . テキスト ファイル

1. プレーン テキスト ファイル

filename = 'demo.txt'
file = open(filename, mode='r') # 打开文件进行读取
text = file.read() # 读取文件的内容
print(file.closed) # 检查文件是否关闭
file.close() # 关闭文件
print(text)

コンテキスト マネージャーを使用 -- with

with open('demo.txt', 'r') as file:
print(file.readline()) # 一行一行读取
print(file.readline())
print(file.readline())

2. テーブル データ: フラット ファイル

Numpy を使用してフラット ファイルを読み取る

Numpy の組み込み関数は、C 言語レベルでデータを処理します。

フラット ファイルは、相対関係構造を持たないレコードを含むファイルです。 (Excel、CSV、およびタブ区切りファイルがサポートされています)

1 つのデータ型を持つファイル

値を区切るために使用される文字列は、最初の 2 行をスキップします。 1 列目と 3 列目で、結果の配列の型を読み取ります。

filename = 'mnist.txt'
data = np.loadtxt(filename,
delimiter=',',
skiprows=2,
usecols=[0,2],
dtype=str)

  • データ型が混在するファイル

2 つの厳しい要件:

  • ヘッダー情報をスキップ
  • 水平座標と垂直座標を区別する

filename = 'titanic.csv'
data = np.genfromtxt(filename,
 delimiter=',',
 names=True,
 dtype=None)

Python の 8 つのデータ インポート方法、あなたはそれらをマスターしましたか?

##Pandas を使用してフラット ファイルを読み取る

filename = 'demo.csv' 
data = pd.read_csv(filename, 
 nrows=5,# 要读取的文件的行数
 header=None,# 作为列名的行号
 sep='t', # 分隔符使用
 comment='#',# 分隔注释的字符
 na_values=[""]) # 可以识别为NA/NaN的字符串

2. Pandas の Excel スプレッドシート

ExcelFile() は、Excel テーブル ファイル、特に複数のシートを含む Excel を読み取るための pandas の非常に便利で高速なクラスであり、ファイルを操作するのに非常に便利です。

file = 'demo.xlsx'
data = pd.ExcelFile(file)
df_sheet2 = data.parse(sheet_name='1960-1966',
 skiprows=[0],
 names=['Country',
'AAM: War(2002)'])
df_sheet1 = pd.read_excel(data,
sheet_name=0,
parse_cols=[0],
skiprows=[0],
names=['Country'])

sheet_names プロパティを使用して、読み取るワークシートの名前を取得します。

data.sheet_names

3. SAS ファイル

SAS (Statistical Analysis System) は、モジュール式で統合された大規模アプリケーション ソフトウェア システムです。保存するファイル sas は統計分析ファイルです。

from sas7bdat import SAS7BDAT
with SAS7BDAT('demo.sas7bdat') as file:
df_sas = file.to_data_frame()

4. Stata ファイル

Stata は、ユーザーにデータ分析、データ管理、専門的なチャート描画を提供する完全な統合統計ソフトウェアです。保存されたファイルは、.dta 拡張子が付いた Stata ファイルです。

data = pd.read_stata('demo.dta')

5. Pickle ファイル

Python のほぼすべてのデータ型 (リスト、辞書、セット、クラスなど) は、pickle を使用してシリアル化できます。 Python の pickle モジュールは、基本的なデータの順序付けと逆シリアル化を実装します。 pickle モジュールのシリアル化操作を通じて、プログラム内で実行されているオブジェクト情報をファイルに保存して永続的に保存することができ、pickle モジュールの逆シリアル化操作を通じて、最後のプログラムによって保存されたオブジェクトをファイルから作成できます。

import pickle
with open('pickled_demo.pkl', 'rb') as file:
 pickled_data = pickle.load(file) # 下载被打开被读取到的数据

対応する操作は、メソッド pickle.dump() を記述することです。

6. HDF5 ファイル

HDF5 ファイルは、さまざまな種類の画像やデジタル データを保存し、さまざまな種類のマシンに転送できる、一般的なクロスプラットフォーム データ ストレージ ファイルです。このファイル形式を統一的に処理する関数ライブラリ。

HDF5 ファイルには通常、拡張子として .h5 または .hdf5 が付いており、プレビュー ファイルのコンテンツを開くには特別なソフトウェアが必要です。

import h5py
filename = 'H-H1_LOSC_4_v1-815411200-4096.hdf5'
data = h5py.File(filename, 'r')

7. Matlab ファイル

MATLAB がワークスペースにデータを保存する、接尾辞 .mat が付いたファイルです。

import scipy.io
filename = 'workspace.mat'
mat = scipy.io.loadmat(filename)

8. リレーショナル データベース

from sqlalchemy import create_engine
engine = create_engine('sqlite://Northwind.sqlite')

table_names() メソッドを使用してテーブル名のリストを取得します

table_names = engine.table_names()

1. リレーショナル データベースに直接クエリを実行します

con = engine.connect()
rs = con.execute("SELECT * FROM Orders")
df = pd.DataFrame(rs.fetchall())
df.columns = rs.keys()
con.close()

コンテキスト マネージャーを使用します -- with

with engine.connect() as con:
rs = con.execute("SELECT OrderID FROM Orders")
df = pd.DataFrame(rs.fetchmany(size=5))
df.columns = rs.keys()

2. Pandas を使用します関係をクエリします。 タイプ データベース

df = pd.read_sql_query("SELECT * FROM Orders", engine)

データ探索

データがインポートされた後、データは最初に探索されます。たとえば、データ タイプ、データ サイズ、長さやその他の基本情報。以下に簡単な概要を示します。

1、NumPy 配列

data_array.dtype# 数组元素的数据类型
data_array.shape# 阵列尺寸
len(data_array) # 数组的长度

2、Pandas データフレーム

df.head()# 返回DataFrames前几行(默认5行)
df.tail()# 返回DataFrames最后几行(默认5行)
df.index # 返回DataFrames索引
df.columns # 返回DataFrames列名
df.info()# 返回DataFrames基本信息
data_array = data.values # 将DataFrames转换为NumPy数组

以上がPython の 8 つのデータ インポート方法、あなたはそれらをマスターしましたか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事は51cto.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。