kharuka2016のブログ

日々の出来事を書き留めておくブログ

pandas-indexを変える-

入門 Python 3

入門 Python 3

【前提条件】

OS:Windows 10 64-bit, version 1607

Anaconda 4.4.0(Python 3.6 version 64-bit)インストー

NumPyのインストー

【手順概要】

1.コマンドプロンプトでIPython Notebookを起動します。

2.indexを変える

【手順】

1.コマンドプロンプトでIPython Notebookを起動します。

ipython notebook

2.indexを変える

2.1.numpy、panadasとpandasからSeries、DataFrameとnumpy.randomからrandnをインポートします。

import numpy as np
import pandas as pd
from pandas import Series,DataFrame
from numpy.random import randn

2.2.Seriesを作成します。

ser1=Series([1,2,3,4],index=['A','B','C','D'])
ser1

Out:

A    1
B    2
C    3
D    4
dtype: int64

2.3.Seriesにindexを追加します。

ser2=ser1.reindex(['A','B','C','D','E','F'])
ser2

Out:

A    1.0
B    2.0
C    3.0
D    4.0
E    NaN
F    NaN
dtype: float64

f:id:kharuka2016:20170725184211p:plain

2.4.Seriesに値付きでindexを追加します。

ser2.reindex(['A','B','C','D','E','F','G'],fill_value=0)

Out:

A    1.0
B    2.0
C    3.0
D    4.0
E    NaN
F    NaN
G    0.0
dtype: float64

f:id:kharuka2016:20170725184224p:plain

2.5.Seriesを作成します。

ser3=Series(['USA','Mexico','Canada'],index=[0,5,10])

2.6.先程作成したSeriesのindexを変更します。indexをrangeを使って指定し、methodをffill指定することで、値がNaNではなく一つ前の要素が入ります。

ser3.reindex(range(15),method='ffill')

Out:

0        USA
1        USA
2        USA
3        USA
4        USA
5     Mexico
6     Mexico
7     Mexico
8     Mexico
9     Mexico
10    Canada
11    Canada
12    Canada
13    Canada
14    Canada
dtype: object

f:id:kharuka2016:20170725184233p:plain

2.7.DataFrameでも同様のことをやってみます。DataFrameを作成します。

dframe=DataFrame(randn(25).reshape([5,5]),index=['A','B','D','E','F'],columns=['col1','col2','col3','col4','col5'])

2.8.indexを追加します。

new_index=['A','B','C','D','E','F']
dframe2=dframe.reindex(new_index)

f:id:kharuka2016:20170725184242p:plain

f:id:kharuka2016:20170725184253p:plain

2.9.列を追加します。

new_columns=['col1','col2','col3','col4','col5','col6']
dframe2.reindex(columns=new_columns)

f:id:kharuka2016:20170725184533p:plain

f:id:kharuka2016:20170725184309p:plain

2.10.行と列を追加します。

dframe.ix[new_index,new_columns]

f:id:kharuka2016:20170725184322p:plain

Pythonではじめる機械学習 ―scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎

Pythonではじめる機械学習 ―scikit-learnで学ぶ特徴量エンジニアリングと機械学習の基礎

参考:

udemy 実践Pythonデータサイエンス

www.udemy.com