Pythonのメモ帳

numpy, pandas, tensorflow を使いこなすための忘備録

pandas

マトリクス形式 (配列) から スプレッド形式 (表) に変換するときも numpy.meshgrid が役立つ

マトリクス形式(配列)のデータをスプレッド形式(表)に変換したい場合がある。 例えば下のような配列を、、 [[0.36363082, 0.00332102, 0.14533355], [0.11039035, 0.95780551, 0.48281694], [0.44771602, 0.94823649, 0.36095112]] ↓ こんなふうな表にしたい…

pandas / DataFrame の中身の文字列を一括で分割して別の列として定義する

pandasで、特定の列の(中身の)文字列を分割して使いたいときがある。 例えばこんな表があったとして、 NumName 0 a001_name1 1 a002_name2 2 a003_name3 ↓ こんな風にしたい NumName num name 0 a001_name1 a001 name1 1 a002_name2 a002 name2 2 a003_name3…

pandas の append処理で行ラベル(index番号)がおかしくなった時に行ラベルをリセットする

pandas で append処理(2つのDataFrameを縦に連結)した時、行ラベル(index番号)は順番通りにならなくなる。 例えばこう。 import pandas as pd import numpy as np data = range(10) data = np.array(data).reshape([5,2]) df1 = pd.DataFrame(data,colum…

DataFrameからリストやnumpy.ndarrayへの変換

DataFrameからnumpy.ndarrayへの変換 .valuesと付け足すだけ。pandas.Seriesの場合も同様の処理で変換が可能。 import numpy as np import pandas as pd dataframe = pd.DataFrame([[1, 2, 3], [4, 5, 6]], dtype=int) array1 = dataframe.values.tolist() p…

pandasでcsvファイルを読み込む際にあえてカラム(列)を分けない

ファイルの読み込みはいくつか方法があることは前回の記事に書いた。 spcx8.hatenablog.com 読み込んだ後の処理を考えると、numpyやpandasで読みたい。でも中身が文字列を含む場合、numpyは使えないのでpandasで読むことになる。 困るのは読み込む対象のファ…

csvファイルやexcelファイル(xls, xlsx)を読み込む

csvファイルやexcelファイル(xls, xlsx)を読み込む場合のコードはいくつかあるのでまとめておく。 (1) 標準ライブラリのcsvを使う import csv with open('data.txt', 'r', encoding='utf-8') as f: dataReader = csv.reader(f, lineterminator='\n') for …