投稿日:2025年1月1日

データ操作の基本(Pandas)

Pandasとは何か

Pandasは、Pythonプログラミング言語におけるデータ操作と分析のライブラリです。
非常に強力で、構造化データの操作や処理を簡単に行うことができます。
これにより、データの前処理、クリーニング、データ解析などが高速かつ効率的に行えます。

データフレームと呼ばれる柔軟なデータ構造を提供し、行と列を使った操作が可能です。
このデータフレームは、ExcelのスプレッドシートやSQLのテーブルと同様のものをイメージすると理解しやすいでしょう。

Pandasでデータを読み込む

Pandasを用いると、CSVファイルやExcelファイル、SQLデータベース、さらにはウェブAPIなど、多岐にわたるデータソースからデータを簡単に読み込むことができます。

CSVファイルの読み込み

CSVファイルは、データを格納する際に最も一般的に使用される形式の一つです。
Pandasでは、`read_csv`関数を使用して簡単に読み込むことができます。

“`python
import pandas as pd

df = pd.read_csv(‘data.csv’)
“`

このコードでは、`data.csv`という名前のCSVファイルを読み込み、データフレーム`df`に格納しています。

Excelファイルの読み込み

Excelファイルからデータを読み込む場合は、`read_excel`関数を使用します。
異なるシートを指定することも可能です。

“`python
df = pd.read_excel(‘data.xlsx’, sheet_name=’Sheet1′)
“`

`sheet_name`オプションを使うことで、特定のシートを指定することができます。

Pandasにおけるデータ操作の基本

データを読み込んだ後、Pandasではデータを簡単に操作し、どのように視覚化したいかによって多種多様な方法で加工できます。

データの選択と抽出

データフレームから特定の行や列を選択することは、Pandasを使用する上で基本的な操作の一つです。
例えば、特定の列を選択するには以下のようにします。

“`python
selected_column = df[‘column_name’]
“`

また、特定の行を選択する場合は、`iloc`や`loc`を使います。

“`python
# インデックスで行を選択
first_row = df.iloc[0]

# 条件で行を選択
filtered_rows = df[df[‘column_name’] > 10]
“`

データの追加と削除

データフレームに新しい列を追加したり、不要な列を削除するのもPandasでよく行われる操作です。

“`python
# 新しい列の追加
df[‘new_column’] = df[‘existing_column’] * 2

# 列の削除
df = df.drop(‘unnecessary_column’, axis=1)
“`

このようにして、必要に応じてデータフレームに新しい情報を追加したり、不要な情報を簡単に削除できます。

データの並べ替え

データを任意の列に基づいて並べ替えることも可能です。
例えば、昇順または降順に並べ替えることができます。

“`python
# 昇順に並べ替え
df_sorted = df.sort_values(by=’column_name’)

# 降順に並べ替え
df_sorted_desc = df.sort_values(by=’column_name’, ascending=False)
“`

これにより、データを視覚化や分析しやすい形に整理することができます。

データ操作の応用技術

基本的なデータ操作を学んだ後は、Pandasを用いたデータの集計や変形を試みることで、さらに高度なデータ分析が可能になります。

データの集計とグループ化

Pandasでは、データをグループ化して集計することができます。
この操作は、データを集団ごとに分析し、洞察を得る際に特に有効です。

“`python
# ‘category’ 列でデータをグループ化し ‘value’ 列の合計を取得
grouped_sum = df.groupby(‘category’)[‘value’].sum()
“`

複数の集計関数を適用したり、異なる集計関数を同時に適用することも容易です。

データの変形

データを柔軟に加工するためには、Pandasの変形機能を活用します。
例えば、データを縦持ちから横持ちに変換する「ピボットテーブル」や、逆操作である「メルト」などがあります。

“`python
# ピボットテーブルの作成
pivot_table = df.pivot_table(values=’value’, index=’category’, columns=’subcategory’, aggfunc=’mean’)

# メルトでデータを展開
df_melted = pd.melt(df, id_vars=[‘category’], value_vars=[‘value1’, ‘value2’])
“`

こうした操作により、データの視点を変え、新しい洞察を得るための基盤を形成できます。

Pandasでのデータクリーニング

データ分析の多くは、最も信頼性の高いデータセットを持つことから始まります。
Pandasを用いたデータクリーニングは、データセットを整え、分析可能な形にするための重要なステップです。

欠損値への対処

データセットにはよく欠損値が含まれています。
Pandasでは、欠損値を検出し、適切に対処するための豊富な機能が用意されています。

“`python
# 欠損値の検出
missing_values = df.isnull().sum()

# 欠損値を置換(平均値で)
df.fillna(df.mean(), inplace=True)
“`

欠損値を削除することもできますが、どの方法を選択するかは、具体的なデータセットの特性に依存します。

データの重複と異常値の処理

データの重複や異常値も、データ分析の精度に大きく影響を与えます。
これらを適切に処理することで、信頼性の高い結果を得ることができます。

“`python
# 重複行の削除
df.drop_duplicates(inplace=True)

# 異常値の検出(統計的に)
z_scores = (df – df.mean()) / df.std()
outliers = df[(z_scores > 3).any(axis=1)]
“`

データのクレンジングを通じて、分析の土台となるデータを強化し、より正確なインサイトを得ることが可能になります。

製造業におけるPandasの応用例

製造業では、大量のデータを管理・解析するニーズが増えています。
Pandasを用いることで、製造過程における様々なデータ処理が容易になります。

生産データのリアルタイム分析

大量の生産データを取得し、リアルタイムで分析することにより、製造効率の向上や不良品の早期発見に役立ちます。

“`python
# 時系列データの分析
production_data = pd.read_csv(‘production_data.csv’, parse_dates=[‘timestamp’])
production_data.set_index(‘timestamp’, inplace=True)
daily_output = production_data[‘output’].resample(‘D’).sum()
“`

Pandasを用いることで、簡単に時系列として処理し、日次、週次、月次といったさまざまな期間での生産量を集計することが可能です。

サプライチェーンの最適化

Pandasを使用すれば、在庫管理やサプライチェーンのデータを分析し、効率的な運用を図ることができます。

“`python
# サプライチェーンのデータ分析
supply_data = pd.read_csv(‘supply_data.csv’)
order_delays = supply_data.groupby(‘supplier_id’)[‘delivery_time’].mean()
“`

これにより、どのサプライヤーが最も遅延を頻繁に発生させているかを特定し、改善策を導入するための土台ができます。

まとめ

Pandasは、製造業でのデータ操作と分析に必須のツールとして、ますます重要性を増しています。
その強力な機能を活用することで、データのクレンジング、変換、分析を効率的に行い、製造過程の最適化や効率の改善を図ることができます。
製造業は、進化を続ける市場のニーズに応えるため、Pandasを使ってデータ駆動型の意思決定を行うことが重要です。

資料ダウンロード

QCD調達購買管理クラウド「newji」は、調達購買部門で必要なQCD管理全てを備えた、現場特化型兼クラウド型の今世紀最高の購買管理システムとなります。

ユーザー登録

調達購買業務の効率化だけでなく、システムを導入することで、コスト削減や製品・資材のステータス可視化のほか、属人化していた購買情報の共有化による内部不正防止や統制にも役立ちます。

NEWJI DX

製造業に特化したデジタルトランスフォーメーション(DX)の実現を目指す請負開発型のコンサルティングサービスです。AI、iPaaS、および先端の技術を駆使して、製造プロセスの効率化、業務効率化、チームワーク強化、コスト削減、品質向上を実現します。このサービスは、製造業の課題を深く理解し、それに対する最適なデジタルソリューションを提供することで、企業が持続的な成長とイノベーションを達成できるようサポートします。

オンライン講座

製造業、主に購買・調達部門にお勤めの方々に向けた情報を配信しております。
新任の方やベテランの方、管理職を対象とした幅広いコンテンツをご用意しております。

お問い合わせ

コストダウンが利益に直結する術だと理解していても、なかなか前に進めることができない状況。そんな時は、newjiのコストダウン自動化機能で大きく利益貢献しよう!
(Β版非公開)

You cannot copy content of this page