記事のディレクトリ
、パンダ
1.as
import pandas as pd
2.システム
非常に重要なデータ構造、すなわち、シーケンスデータブロックとシリーズのデータフレームをパンダ2つのタイプがあります。
-
機能または利用可能であり、そのデータは、インデックスタブによって得ることができる方法テイク次元アレイに加えて、一連のnumpyの類似の一次元アレイは、また、自動アライメント機能指数を有します。
-
二次元アレイのnumpyの、一般的な機能及び方法と同様のデータフレームは、アレイnumpyのであってもよいです
第二に、シーケンスデータブロックとシリーズのデータフレーム
1.Seriesを作成します
インデックスは、左の指標である、右は対応する値です
名前= pd.Series(...)
(1)一次元アレイNP
#ndarray类型的一维数组
import pandas as pd
import numpy as np
a=pd.Series(np.array([3,4,5]));
print(a)
'''
0 3
1 4
2 5
dtype: int32
'''
print(type(a))
#<class 'pandas.core.series.Series'>
(2)一覧
#列表类型的一维数组
import pandas as pd
a=pd.Series([3,4,5]);
print(a)
'''
0 3
1 4
2 5
dtype: int64
'''
(3)辞書
import pandas as pd
dict = {'a':3,'b':4,'c':5}
ds=pd.Series(dict)
print(ds)
'''
a 3
b 4
c 5
dtype: int64
'''
(4)行または列のデータフレームによってシーケンスを作成します
import pandas as pd
dic3 = {'one':{'a':1,'b':2,'c':3,'d':4},'two':{'a':5,'b':6,'c':7,'d':8},'three':{'a':9,'b':10,'c':11,'d':12}}
df3 = pd.DataFrame(dic3)
s3 = df3['one']
print(s3)
'''
a 1
b 2
c 3
d 4
Name: one, dtype: int64
'''
print(type(s3))
#<class 'pandas.core.series.Series'>
2.DataFrame
左と上側面がインデックス化されています
名前= pd.DataFrame(...)
(1)二次元アレイNP
#ndarray的二维数组
import pandas as pd
import numpy as np
arr1 = np.array(np.arange(12)).reshape(4,3)
df1 = pd.DataFrame(arr1)
print(df1)
'''
0 1 2
0 0 1 2
1 3 4 5
2 6 7 8
3 9 10 11
'''
print(type(df1))
#<class 'pandas.core.frame.DataFrame'>
(2)ネストされたリスト
#列表类型的二维数组
import pandas as pd
arr2 = [[1,2,3],[4,5,6]];
df2 = pd.DataFrame(arr2)
print(df2)
'''
0 1 2
0 1 2 3
1 4 5 6
'''
(3)辞書
2つのボックスにデータ・ディクショナリを作成するには、以下の、1は、辞書リスト、ネストされた辞書です。
#字典列表
import pandas as pd
dic1 = {'a':[1,2,3,4],'b':[5,6,7,8],'c':[9,10,11,12],'d':[13,14,15,16]}
df1 = pd.DataFrame(dic1)
print(df1)
'''
a b c d
0 1 5 9 13
1 2 6 10 14
2 3 7 11 15
3 4 8 12 16
'''
#嵌套字典
import pandas as pd
dic3 = {'one':{'a':1,'b':2,'c':3,'d':4},'two':{'a':5,'b':6,'c':7,'d':8},'three':{'a':9,'b':10,'c':11,'d':12}}
df3 = pd.DataFrame(dic3)
print(df3)
'''
one three two
a 1 9 5
b 2 10 6
c 3 11 7
d 4 12 8
'''
(4)データ・フレームを介してデータフレームを作成
import pandas as pd
dic3 = {'one':{'a':1,'b':2,'c':3,'d':4},'two':{'a':5,'b':6,'c':7,'d':8},'three':{'a':9,'b':10,'c':11,'d':12}}
df3 = pd.DataFrame(dic3)
df4 = df3[['one','three']]
print(df4)
'''
one three
a 1 9
b 2 10
c 3 11
d 4 12
'''
第三に、インデックス
1.設定されたインデックス
(1)デフォルトのインデックス
もしそうでないと指定されたインデックス値、インデックス0から自己増力開始の自動生成します。
import pandas as pd
s4 = pd.Series(np.array([0,1,2,3,4,5]))
print(s4)
'''
0 0
1 1
2 2
3 3
4 4
5 5
dtype: int32
'''
import pandas as pd
import numpy as np
arr1 = np.array(np.arange(12)).reshape(4,3)
df1=pd.DataFrame(arr1)
print(df1)
'''
0 1 2
0 0 1 2
1 3 4 5
2 6 7 8
3 9 10 11
'''
(2)閲覧インデックス
シリーズ
あなたは、インデックスによってインデックスシーケンスを表示することができます:ステップのステップサイズ、停止しないで、最初からスタート
print(s4.index)
#RangeIndex(start=0, stop=6, step=1)
データフレーム
インデックスの表示列のインデックス、列が横行インデックスを参照してください
import pandas as pd
import numpy as np
arr1 = np.array(np.arange(12)).reshape(4,3)
df1=pd.DataFrame(arr1,index=['a','b','c','d'],columns=[3,4,5])
print(df1)
'''
3 4 5
a 0 1 2
b 3 4 5
c 6 7 8
d 9 10 11
'''
print(df1.index)
#Index(['a', 'b', 'c', 'd'], dtype='object')
print(df1.columns)
#Int64Index([3, 4, 5], dtype='int64')
(3)カスタムインデックス
自己定義されたインデックスの概念
カスタムインデックスは、インデックスがカスタマイズするために使用できるだけでなく、あなたはまた、元のデフォルトのインデックスを使用することができます
別々の作成
import pandas as pd
s4 = pd.Series(np.array([0,1,2,3,4,5]))
print(s4)
'''
0 0
1 1
2 2
3 3
4 4
5 5
dtype: int32
'''
s4.index = ['a','b','c','d','e','f']
print(s4)
'''
a 0
b 1
c 2
d 3
e 4
f 5
dtype: int32
'''
import pandas as pd
import numpy as np
arr1 = np.array(np.arange(12)).reshape(4,3)
df1 = pd.DataFrame(arr1)
print(df1)
'''
0 1 2
0 0 1 2
1 3 4 5
2 6 7 8
3 9 10 11
'''
df1.index=['a','b','c','d']
print(df1)
'''
0 1 2
a 0 1 2
b 3 4 5
c 6 7 8
d 9 10 11
'''
df1.columns=[3,4,5]
print(df1)
'''
3 4 5
a 0 1 2
b 3 4 5
c 6 7 8
d 9 10 11
'''
初期化中に作成されました
import pandas as pd
s=pd.Series(np.array([1,2,3]),index=['a','b','c'])
print(s)
'''
a 1
b 2
c 3
dtype: int32
'''
print(s.index)
#Index(['a', 'b', 'c'], dtype='object')
import pandas as pd
import numpy as np
arr1 = np.array(np.arange(12)).reshape(4,3)
df1=pd.DataFrame(arr1,index=['a','b','c','d'],columns=[3,4,5])
print(df1)
'''
3 4 5
a 0 1 2
b 3 4 5
c 6 7 8
d 9 10 11
'''
2.インデックスデータを取得します。
単一のインデックス:インデックス値、S4として、[1]又はS4 [ 'B']
インデックス複数の一次元のリスト、例えばS4 [1,3,5]又はS4として[「B」、「D」、「F」]
ファンシーインデックス:カスタムラベルを介してデータを取得し、その後、ラベルの端部に対応するインデックス値が返されます!デフォルトのインデックスタブは戻りません。
[4]と[ 'D':]、[ 2] 及び[: 'C']の効果は同じです。しかし、[ 'B': 'D' 〕 含まは、BからDまでである[1:3]未満、1〜3です。
import pandas as pd
s4 = pd.Series(np.array([0,1,2,3,4,5]))
print(s4)
'''
0 0
1 1
2 2
3 3
4 4
5 5
dtype: int32
'''
s4.index = ['a','b','c','d','e','f']
print(s4)
'''
a 0
b 1
c 2
d 3
e 4
f 5
dtype: int32
'''
#单个索引
print('s4[3]: ',s4[3])
print('s4[e]: ',s4['e'])
'''
s4[3]: 3
s4[e]: 4
'''
#多个索引
print("s4[[1,3,5]]: ",s4[[1,3,5]])
'''
s4[1,3,5]: b 1
d 3
f 5
dtype: int32
'''
print("s4[['b','d','f']]: ",s4[['b','d','f']])
'''
s4[['b','d','f']]: b 1
d 3
f 5
dtype: int32
'''
#花式索引-一样的
print('s4[:4]: ',s4[:4])
print("s4[:'d']:",s4[:'d'])
print('s4[2:]',s4[2:])
print("s4['c':]: ",s4['c':])
'''
s4[:4]: a 0
b 1
c 2
d 3
dtype: int32
s4[:'d']: a 0
b 1
c 2
d 3
dtype: int32
s4[2:] c 2
d 3
e 4
f 5
dtype: int32
s4['c':]: c 2
d 3
e 4
f 5
dtype: int32
'''
#花式索引-不同的
print("s4['b':'d']: ",s4['b':'d'])
print("s4[1:3]:",s4[1:3])
'''
s4['b':'d']: b 1
c 2
d 3
dtype: int32
s4[1:3]: b 1
c 2
dtype: int32
'''
3.合わせの自動化
自動アライメント - 二つの配列二つの演算シーケンスのための必要性がある場合、その値を反映する指標があります。
インデックスを対応する場合、結果は、インデックス結果の間です。
場合は、結果はNaNに対応するインデックスの欠如です。
import pandas as pd
import numpy as np
s1=pd.Series(np.array([1,2,3]),index=['a','b','c'])
s2=pd.Series(np.array([10,20,30]),index=['b','a','d'])
print(s1+s2)
'''
a 21.0
b 12.0
c NaN
d NaN
dtype: float64
'''
import pandas as pd
d1=pd.DataFrame({'a':[1,2,3],'b':[4,5,6],'c':[7,8,9]})
d2=pd.DataFrame({'b':[10,10,10],'a':[20,20,20],'d':[30,30,30]})
print(d1+d2)
'''
a b c d
0 21 14 NaN NaN
1 22 15 NaN NaN
2 23 16 NaN NaN
'''