1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[pandas].csvファイル読み込み、表示方法

Last updated at Posted at 2020-05-12

今回はpandasを用いて.csvファイルからの読み込み,出力についてまとめました。
まだまだ未熟者ですので、不備や間違えている点があれば指摘していただけると幸いです。

pandasとは

pandas is a fast, powerful, flexible and easy to use open source data analysis and manipulation tool,
built on top of the Python programming language.
pandasは高速, 強力, 柔軟, そして簡単に使用できるオープンソースのデータ分析やデータ操作ツールです。python上に構築されています。
pandas - Python Data Analysis Library

準備

環境

名称 バージョン
macOS Catalina 10.15.3
pandas 0.25.1

各ライブラリのインストール

$pip3 install pandas

今回使用するsample.csv

sample.csv
name,HP,MP,ATK,DEF,INT
A,83,89,76,97,76
B,66,93,75,88,76
C,100,84,96,82,94
D,60,73,63,52,70
E,92,62,84,80,78
F,96,92,94,92,90

上記のファイルをこれから作成するソースコードと同じフォルダに入れて実行します。

csvファイルの読み込み

書式

import pandas as pd

#csvファイルの読み込み
df = pd.read_csv("file_name.csv")
説明
import pandas as pd

pandasをpdという名称で読み込んでいる
こうすることで

import pandas
df = pandas.reac_csv("file_name.csv")

ではなく以下のように短く記述してpandasを使用することができる.

import pandas as pd
df = pd.reac_csv("file_name.csv")

実行ファイル

import pandas as pd 

df = pd.read_csv("sample.csv")
print(df)

実行結果

  name   HP  MP  ATK  DEF  INT
0    A   83  89   76   97   76
1    B   66  93   75   88   76
2    C  100  84   96   82   94
3    D   60  73   63   52   70
4    E   92  62   84   80   78
5    F   96  92   94   92   90

列を指定して表示

書式

#1つの列を指定
df["col_name"]

#2つの列を指定
df[["col_name1", "col_name2"]]

実行ファイル

import pandas as pd 

df = pd.read_csv("sample.csv")

#列を指定して出力
print("---select column")
print(df["name"])
print("---")
#列を複数指定して出力
print("---select multiple columns")
print(df[["name","HP"]])
print("---")


実行結果

---select column
0    A
1    B
2    C
3    D
4    E
5    F
Name: name, dtype: object
---
---select multiple columns
  name   HP
0    A   83
1    B   66
2    C  100
3    D   60
4    E   92
5    F   96
---

行を指定して表示

書式

#1つの行を指定
df.loc[row_number]

#2つの行を指定
df[[row_number1, row_number2]]

実行ファイル

import pandas as pd 

df = pd.read_csv("sample.csv")

#行を指定して出力
print("---select row")
print(df.loc[0])
print("---")
#行を複数指定して出力
print("---select multiple rows")
print(df.loc[[0,2]])
print("---")

実行結果

---select row
name     A
HP      83
MP      89
ATK     76
DEF     97
INT     76
Name: 0, dtype: object
---
---select multiple rows
  name   HP  MP  ATK  DEF  INT
0    A   83  89   76   97   76
2    C  100  84   96   82   94
---

1つの要素データを指定

書式

df.loc[row_number]["col_name"]

実行ファイル

import pandas as pd 

df = pd.read_csv("sample.csv")

print("---select one element")
print(df[2][name])
print("---")

実行結果

--- select one element
C
---

条件にあうデータの表示

実行ファイル

import pandas as pd 

df = pd.reac_csv("sample.csv")
data_atk = df[df["ATK"] > 85]
print("---ATK > 85")
print(data_atk)
print("---")

実行結果

---ATK > 85
  name   HP  MP  ATK  DEF  INT
2    C  100  84   96   82   94
5    F   96  92   94   92   90
---

ソートして表示する

書式

#昇順(小さいものほど先にくる)
df = df.sort_values("col_name")

#降順(大きいものほど先にくる)
df = df.sort_values("col_name", ascending=False)

ascending:のぼっていく、上昇的な
ascending とは 意味・読み方・表現 | Weblio英和辞書

実行ファイル

import pandas as pd
df = pd.reac_csv("sample.csv")

HP_asc = df.sort_values("HP")
print("---HP ascending")
print(HP_asc)
print("---")

HP_desc = df.sort_values("HP", ascending=False)
print("---HP descending")
print(HP_desc)
print("---")

実行結果

---HP ascending
  name   HP  MP  ATK  DEF  INT
3    D   60  73   63   52   70
1    B   66  93   75   88   76
0    A   83  89   76   97   76
4    E   92  62   84   80   78
5    F   96  92   94   92   90
2    C  100  84   96   82   94
---
---HP descending
  name   HP  MP  ATK  DEF  INT
2    C  100  84   96   82   94
5    F   96  92   94   92   90
4    E   92  62   84   80   78
0    A   83  89   76   97   76
1    B   66  93   75   88   76
3    D   60  73   63   52   70
---

転置して表示

実行ファイル

import pandas as pd 

df = pd.read_csv("sample.csv")
print("---Transposition")
print(df.T)
print("---")

実行結果

---Transposition
       0   1    2   3   4   5
name   A   B    C   D   E   F
HP    83  66  100  60  92  96
MP    89  93   84  73  62  92
ATK   76  75   96  63  84  94
DEF   97  88   82  52  80  92
INT   76  76   94  70  78  90
---

listに変換して表示

実行ファイル

import pandas as pd 

df = pd.read_csv("sample.csv")

print("---list")
print(df.values)
print("---")

実行結果

---list
[['A' 83 89 76 97 76]
 ['B' 66 93 75 88 76]
 ['C' 100 84 96 82 94]
 ['D' 60 73 63 52 70]
 ['E' 92 62 84 80 78]
 ['F' 96 92 94 92 90]]
---

参考文献

この記事は以下の情報を参考にして執筆しました。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?