Help us understand the problem. What is going on with this article?

pandas使うときに便利だったものまとめ

この記事は古川研究室 Advent_calendar 3日目の記事です。
本記事は古川研究室の学生が学習の一環として書いたものです。内容が曖昧であったり表現が多少異なったりする場合があります。

はじめに

本記事では私がデータ整形でpandasを用いた時に便利だったコマンドのまとめをしようと思います。
プログラム初心者がお送りする内容なので暖かい目で見ていただけると助かります^^

本文

import pandas as pd

df=pd.read_csv('ファイルパス')

基本的にはこれでcsvを読む
実際にはいくつものファイルを読み込まないといけない状況もあるはずなのでそんな時に使った方法を下に示します。

複数のファイルをまとめて読み込んでしまいたいとき

import glob

# 同じ階層
file_pass = glob.glob('*.csv')

# 階層も指定できる
file_pass = glob.glob('○○/○○/*.csv')

これで指定した階層にある.csvファイルのパスをとってこれます。
○○/○○ というディレクトリに
data_1.csv , data_1.txt , data_2.csv , data_2.txt
が存在している場合は

[○○/○○/data_1.csv,○○/○○/data_2.csv]

が返されます。
あとはfor文で

counter = -1
for i in file_pass
    df = pd.read_csv(i)
    counter = counter + 1
    # なにか操作を加えて
    # 保存しなおし、indexなしで保存する場合はindex=Falseを付ければ良き
    df.to_csv('new_name_{0}.csv'.format(counter))

と一気にデータ整形できます(to_csvやらcounterとかはてきとう)

os

名前つけるときとかに便利なのがこれ

import os

# ()の中のパスを持ってこれる"../"でこのコード書いてる場所の一個上参照したりとか
path = os.path.abspath(filepath)

# パスのうちファイルネームを持ってこれる
# globと合わせて使うと便利だった
name = os.path.basename(filepath)

# 拡張子もいらないよって時に.でsplitして分割しちゃう
name = name.split(".")
name = name[0]

まとめ

globとosつかうと一気にcsvファイル読み込んで同じ操作加えるのが楽だよって話でした。
自分でやってる際に思ったことなんですが、pandasの操作自体は"pandas ○○"って感じでググればでてくるのですが、pandasの機能なのかpythonのライブラリなのか判断つかなくてうまく検索できないって状況が多かったです。
何ができるのか程度は知っておいて適切にググる力をつけていきたいです╭( ・ㅂ・)و

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした