-
【Python】Pandas DataFrameに定数値を持つ新しい列を追加する方法
PandasのDataFrameに定数値(すべての行で同じ値)を持つ新しい列を追加するには、角括弧(インデックス演算子 [])を使って新しい列名を指定し、そこに値を代入するだけです。非常にシンプルな操作ですが、データ分析の前処理などで頻繁に使われるテクニックです。 1. 必要なライブラリをインポートする まず、pandasをインポートします。 import pandas as pd 2. サンプル用のDataFrameを作成する ここでは、4つの列(Car、Cubic_Capacity、Reg_Price、Units_Sold)を持つDataFrameを作成します。 dataFrame = p
-
Pythonのilocを使ってPandas DataFrameにリストを追加する方法
ilocメソッドとはilocは、Pandasにおいて行や列の「整数位置」に基づいてデータを選択するためのインデックス参照メソッドです。このilocを利用することで、既存のDataFrameに対してリスト形式の新しい行を追加(上書き)することができます。本記事では、ilocを使ってDataFrameにリストを追加する具体的な手順を、サンプルコードと実行結果とともに解説します。サンプルデータの準備まずはDataFrameを作成しましょう。ここでは、チームのランキングデータをリスト形式で用意します。import pandas as pd # チームランキングのデータ(リスト形式) Team = [
-
Pythonで2つのPandas DataFrameをマージ(結合)する方法
2つのPandas DataFrameをマージ(結合)するには、merge()関数を使用します。使い方は非常にシンプルで、結合したい2つのDataFrameを引数としてmerge()関数に渡すだけでOKです。デフォルトでは、共通する列名がキーとして自動的に認識され、内部結合(inner join)が実行されます。ライブラリのインポートまず、必要なライブラリを「pd」という別名でインポートします。import pandas as pdDataFrameの作成1つ目のDataFrameを作成します。ここでは車種と販売台数のデータを用意しました。# DataFrame1を作成 dataFrame1
-
Pandas DataFrameを共通の列でマージする方法【merge()関数の使い方】
Pandasで2つのDataFrame(データフレーム)を共通の列をキーに結合(マージ)するには、merge() 関数を使用し、on パラメータに共通の列名を指定します。まず、pandasライブラリをエイリアス付きでインポートしましょう。import pandas as pd次に、1つ目のDataFrameを作成します。dataFrame1 = pd.DataFrame( { Car: [BMW, Lexus, Audi, Mustang, Bentley, Jaguar], Units: [100, 150, 110, 80, 110, 90]
-
【Python】NumPyのintersect1d()を使って2つのPandas DataFrameの共通列を取得する方法
はじめに 2つのDataFrameに共通する列を取得したい場合、NumPyが提供するintersect1d()メソッドが便利です。このメソッドはNumPyの機能であるため、Pandasと合わせてNumPyもインポートしておく必要があります。 import pandas as pd import numpy as np サンプルDataFrameの作成 まず、比較対象となる2つのDataFrameを作成しましょう。dataFrame1には4つの列、dataFrame2には2つの列を持たせます。 # dataframe1の作成 dataFrame1 = pd.DataFrame({Car: [Be
-
Python Pandas – subsetを指定してdrop_duplicates()で重複値の最後のエントリのみを表示する方法
重複する値の中から最後のエントリのみを表示したい場合は、drop_duplicates() メソッドの keep パラメータに last を指定します。drop_duplicates() は、DataFrame内の重複行を削除するためのメソッドです。 DataFrameの作成 まずは、「Car(車種)」「Place(地域)」「UnitsSold(販売台数)」の3つの列を持つDataFrameを作成しましょう。 import pandas as pd dataFrame = pd.DataFrame({ Car: [BMW, Mercedes, Lamborghini, BMW, Mer
-
【Python・Pandas】DataFrameのマルチレベル列をstack()メソッドでスタックする方法
PandasのDataFrameでマルチレベル(階層型)の列をスタックするには、stack()メソッドを使用します。stack()は、列方向に並んでいたデータを行インデックス方向へ回転させ、ワイド形式からロング形式へ変換できる便利なメソッドです。 1. 必要なライブラリをインポートする まず、pandasをインポートします。 import pandas as pd 2. マルチレベルの列を作成する pd.MultiIndex.from_tuples()にタプルのリストを渡すことで、マルチレベルの列を作成できます。 items = pd.MultiIndex.from_tuples([
-
Pythonで3つ以上のPandas DataFrameを連結する方法|concat()の使い方を徹底解説
Pythonで複数のPandas DataFrameを連結するには? 2つ以上のPandas DataFrameを連結(結合)するには、concat()メソッドを使用します。この記事では、3つのDataFrameを実際に作成し、それらを1つにまとめるまでの手順を、サンプルコードと実行結果つきでわかりやすく解説します。 手順1:ライブラリをインポートする まず、必要なライブラリであるPandasをインポートします。 import pandas as pd 手順2:1つ目のDataFrameを作成する dataFrame1 = pd.DataFrame( { Col1: [
-
【Python】複数のCSVファイルを1つのPandasデータフレームに結合する方法
複数のCSVファイルを1つのデータフレームにまとめる基本手法 複数のCSVファイルを1つのPandasデータフレームに結合したい場合、read_csv()とpd.concat()を組み合わせるのが最もシンプルで効率的な方法です。まずは、必要なPandasライブラリをインポートしましょう。ここでは、エイリアスとして「pd」を設定します。 import pandas as pd サンプルとなるCSVファイル 今回は、以下の2つのCSVファイルを例に説明します。 Sales1.csv Sales2.csv どちらのファイルにも「Car(車種)」「Place(地域)」「UnitsSold(販売台数
-
Pandasでディレクトリ内のすべてのExcelファイルをDataFrameとして読み込む方法
はじめに フォルダ内に保存された複数のExcelファイルをまとめて読み込み、PandasのDataFrameとして扱いたい場面はよくあります。そんなときに便利なのが、Python標準ライブラリのglobモジュールと、Pandasのread_excel()メソッドを組み合わせる方法です。 ここでは、デスクトップ上に以下の2つのExcelファイルが保存されているケースを例に解説します。 Sales1.xlsx Sales2.xlsx 手順1:Excelファイルが保存されているパスを指定する まず、Excelファイルが置かれているフォルダのパスを設定します。そのうえで、glob.glob()に「
-
【Python】Seabornのバイオリンプロットでorderパラメータにより表示順序を制御する方法
Seabornのバイオリンプロット(Violin Plot)は、箱ひげ図とカーネル密度推定を組み合わせた可視化手法です。この描画には seaborn.violinplot() 関数を使用します。カテゴリの表示順序を制御したい場合は、order パラメータに明示的な順序を渡すことで実現できます。 ここでは、次のようなCSVファイル「Cricketers.csv」をデータセットとして使用します。 まず、必要なライブラリをインポートしましょう。 import seaborn as sb import pandas as pd import matplotlib.pyplot as plt 続いて、C
-
Python Pandas・Seabornのswarmplotで2つのカテゴリ変数を使ってデータをグループ化する方法
Seabornのスウォームプロット(Swarm Plot)は、点が重ならないように配置されたカテゴリ別散布図を描画するための機能です。この描画には seaborn.swarmplot() を使用します。スウォームを2つのカテゴリ変数でグループ化したい場合は、swarmplot() の x、y、または hue パラメータにそれらの変数を指定します。 ここでは、CSVファイル「Cricketers2.csv」に保存されたデータセットを例に説明します。 必要なライブラリのインポート まず、必要なライブラリをインポートします。 import seaborn as sb import pandas as
-
Seabornのswarmplotでorderパラメータを使って表示順序を制御する方法
Seabornのスウォームプロット(Swarm Plot)は、点が重ならないように自動調整されたカテゴリ別散布図を描画するためのグラフです。この描画には seaborn.swarmplot() 関数を使用します。order パラメータに明示的な順序(カテゴリ名のリスト)を渡すことで、特定の列を基準とした表示順序を自由に制御できます。 データセットの準備 ここでは、CSVファイル「Cricketers2.csv」の形式で保存されたデータセットを使用します。 必要なライブラリのインポート import seaborn as sb import pandas as pd import matplot
-
Python Pandas入門:Seabornで箱ひげ図の上にスウォームプロット(観測値の群れ)を重ねて描画する方法
データ分析において、分布の全体像を把握しながら個々のデータポイントも確認したい場面は多くあります。Seabornのスウォームプロット(Swarm Plot)は、点同士が重ならないように配置されたカテゴリ別散布図を描画する機能で、seaborn.swarmplot()を使用して実現できます。 本記事では、seaborn.boxplot()で描いた箱ひげ図の上に、このスウォームプロットを重ねて表示する方法を解説します。箱ひげ図だけでは見えない外れ値やデータの偏りを、視覚的に把握できるようになります。 前提条件と準備 まず、必要なライブラリをインポートします。Seaborn、Pandas、NumPy
-
Python Pandas入門:Seabornでバイオリン図を描き、四分位数を水平線として表示する方法
Seabornのバイオリンプロット(Violin Plot)は、箱ひげ図(ボックスプロット)とカーネル密度推定(KDE)を組み合わせたグラフを描画するための機能です。seaborn.violinplot()メソッドを使用します。四分位数を水平線として表示するには、innerパラメータにquartileを指定します。データセットの準備ここでは、クリケット選手のデータが格納されたCSVファイル「Cricketers.csv」をデータセットとして使用します。必要なライブラリのインポートまず、必要なライブラリをインポートします。import seaborn as sb import pandas as
-
Python・Pandasでフォルダ内のすべてのCSVファイルを一括読み込みする方法
フォルダ内に保存された複数のCSVファイルをまとめて読み込みたい場合、Pythonの標準ライブラリである globモジュール と、Pandasの read_csv() メソッド を組み合わせるのが便利です。この記事では、指定したディレクトリ内のすべてのCSVファイルを自動的に検出し、順番に読み込んで表示する方法を解説します。1. パスを設定してCSVファイルの一覧を取得するまず、対象となるフォルダのパスを設定します。ここでは、CSVファイルが「MyProject」というフォルダに保存されているものとします。path = C:\\Users\\amit_\\Desktop\\MyProject\
-
PythonでCSVファイルを特定の列(カラム)を基準に並べ替える方法【pandas sort_values】
CSVファイルを単一の列(カラム)を基準に並べ替えたい場合は、pandasのsort_values()メソッドを使います。並べ替えの基準となる列名をsort_values()メソッドに指定するだけで、簡単にデータをソートできます。CSVファイルを読み込むまず、対象となるCSVファイル「SalesRecords.csv」をDataFrameとして読み込みます。dataFrame = pd.read_csv(C:\\Users\\amit_\\Desktop\\SalesRecords.csv)特定の列を基準に並べ替える「Car」列で並べ替える場合dataFrame.sort_values(Car
-
Python Pandasで特定の文字列を含む行をフィルタリングする方法|str.contains()の使い方
はじめにPythonのPandasでは、str.contains()メソッドを使うことで、DataFrame内の特定の文字列を含む行を簡単に抽出(フィルタリング)できます。本記事では、CSVファイルを読み込み、「Lamborghini」という文字列を含む行だけを取り出す具体例を通して、その基本的な使い方を解説します。1. ライブラリのインポートまず、Pandasを慣例的なエイリアス「pd」でインポートしましょう。import pandas as pd2. CSVファイルの読み込みread_csv()関数を使ってCSVファイルを読み込みます。ここでは、デスクトップ上に保存された「CarRecor
-
Python Pandasで特定のテキストを含む行を反復処理して取得する方法
特定のテキストを含む行を反復処理して取得するには、itertuples()メソッドとfind()メソッドを使用します。itertuples()は、DataFrameの行を1行ずつ順番に処理するための便利なメソッドです。Pandasのインポートまず、必要なライブラリをエイリアス付きでインポートします。import pandas as pdCSVファイルの読み込み今回は、デスクトップに保存された以下のパスにあるCSVファイルを使用します。C:\Users\amit_\Desktop\CarRecords.csvCSVファイルを読み込んで、PandasのDataFrameを作成しましょう。dataF
-
Python Pandas入門 – DataFrameから特定の行数を表示する方法
PandasのDataFrameから特定の行数だけを表示したい場合は、head()関数を使用します。引数に取得したい行数を指定することで、DataFrameの先頭から任意の件数のレコードを簡単に取り出せます。例えば、先頭10行を表示したい場合は、次のように記述します。dataFrame.head(10)なお、引数を省略した場合、head()はデフォルトで先頭5行を返します。逆に末尾の行を取得したい場合はtail()関数を使うと便利です。準備:ライブラリのインポートまず、必要なライブラリをエイリアス(別名)を付けてインポートします。import pandas as pd CSVファイルの読み込み