いっかくのデータサイエンティストをいく

1からプログラミングとデータサイエンスを独習したい

【備忘録】データの形式を変換する(Python)

データフレームをリストにしたり、リストをシリーズにしたり、解析をしているとデータの形式を変換するばめんによく遭遇するのでまとめてみました。

import numpy as np
import pandas as pd

'''
(配列)リストから変換する
'''
#データ
df_list = [1, 2, 3]

#numpy配列へ
np.array(df_list)
#Out[7]: array([1, 2, 3])

#Pandas.Seriesへ
pd.Series(df_list)
#Out[8]: 
#0    1
#1    2
#2    3
#dtype: int64

#Pandas.DataFrameへ
pd.DataFrame(df_list)
#Out[6]: 
#   0
#0  1
#1  2
#2  3


'''
Numpy配列から変換する
'''
#データ
df_ndarray = np.array([1, 2, 3], dtype=np.int32)

#配列(リスト)へ
list(df_ndarray)
#Out[8]: [1, 2, 3]

#Pandas.Seriesへ
pd.Series(df_ndarray)
#Out[9]: 
#0    1
#1    2
#2    3
#dtype: int32

#Pandas.DataFrameへ
pd.DataFrame(df_ndarray)
#Out[10]: 
#   0
#0  1
#1  2
#2  3


'''
Pandas.Seriesから変換する
'''
#データ
df_Series = pd.Series({'a':1, 'b':2, 'c':3})

#配列(リスト)へ
list(df_Series)
#Out[12]: [1, 2, 3]

#辞書へ
dict(df_Series)
#Out[13]: {'a': 1, 'b': 2, 'c': 3}

#numpy配列へ
np.array(df_Series)
#Out[14]: array([1, 2, 3], dtype=int64)

#Pandas.DataFrameへ
pd.DataFrame(df_Series)
#Out[15]: 
#   0
#a  1
#b  2
#c  3


'''
Pandas.DataFrameから変換する
'''
#データ
df_DataFrame = pd.DataFrame({'data':[1,2,3]})

#配列(リスト)へ
list(df_DataFrame.values.flatten())
#Out[17]: [1, 2, 3]
df_DataFrame.values.tolist()
#Out[20]: [[1], [2], [3]]

#numpy配列へ
np.array(df_DataFrame.values.flatten())
#Out[18]: array([1, 2, 3], dtype=int64)

#Pandas.Seriesへ
pd.Series(df_DataFrame.values.flatten())
#Out[19]: 
#0    1
#1    2
#2    3
#dtype: int64