これは、最も基本的なパンダの使用状況の概要ですが、また、将来的にその見直しと行動の問い合わせを容易にします。
前の記事の作成とデータフレームシリーズの方法をまとめたもので、それは無視し、インデックス、この重要な概念のを。この記事では、今日はシリーズの問題をインデックスものの株式を取ります。
1.インデックスとは何ですか
1.1理解インデックス
シンプルなシリーズを作成するために、上記の方法を使用して最初のブログ記事。
s1 = pd.Series(['a', 'b', 'c', 'd'])
print(s1)
-----------------------------
[out]:
0 a
1 b
2 c
3 d
dtype: object
我々はゼロインデックス(指数)と呼ばれている数字の左端の列からS1、と述べました。各インデックスの右辺の値(値)に相当します。のは、インデックス値の出力方法の全てと、全てを見てみましょう。
print(s1.index) # 由于是默认生成的索引,输出就是这个样子
[out]:
RangeIndex(start=0, stop=4, step=1)
-----------------------------------------
print(s1.values) # 输出为Numpy中的数组类型
[out]:
array(['a', 'b', 'c', 'd'], dtype=object)
1.2カスタムインデックス
シリーズを作成するときにもちろん、我々は使用することができ、インデックス自身のインデックスがどのように見えるこのパラメータを指定します。
s2 = pd.Series(['a', 'b', 'c', 'd'], index = ['one', 'two', 'three', 'four'])
print(s2)
-----------------------------
[out]:
one a
two b
three c
four d
dtype: object
この時点であれば出力値とインデックスの値:
print(s1.index) # 此时就会输出我们自定义的索引
[out]:
Index(['one', 'two', 'three', 'four'], dtype='object')
-----------------------------
print(s2.values)
[out]:
array(['a', 'b', 'c', 'd'], dtype=object)
2.インデックスを使用する方法
2.1所在地インデックス
シリーズ全体の配列はそれほど上の所定の位置が存在する、ゼロフラグを有する第一の数の位置、第二の数のフラグであり、。だから我々は、アクセスの場所にこのインデックスを使用することができます。
# 对于s2,输出是一毛一样的
print(s1[2]) # 取一个值
[out]: 'c'
-------------------------------------------
print(s1[[0, 3]]) # 取多个值,用列表括起来
[out]:
0 a
3 d
dtype: object
2.2を使用するインデックスラベル
S2のために、私たちは、そのため、ラベルを使用して索引の誕生を位置ためだけでなく、私たちのカスタム指標値ああ(とも呼ばれるラベルを)持っていないだけ。
s2['two'] # 取一个值
[out]: 'b'
-----------------------------------------------
s2[['one', 'three']] # 取多个值,用列表括起来
[out]:
one a
three c
dtype: object
2.3使用のスライスインデックス
前の例では、単一のインデックス値(テイク複数の値だけでなく、リストのインデックスが対応する値を検索する場合でも、インデックスのリスト)です。その後、食べるために1を引いて、作品が食べるために引っ張っ全体パン、のようなものです。
しかし、パンは、直接連続したデータのブロックにシリーズを取ることを、スライスの概念のこの使用、全体のスライスにそれを食べるために、直接削減することができます。
# 对位置索引进行切片
print(s2[1:3]) # 使用位置索引,是不包含最后一个位置3对应的值滴
-----------------------------
[out]:
two b
three c
# 对标签索引进行切片
print(s2['two':'four']) # 使用标签索引,却可以包含最后一个标签对应的值
-----------------------------
[out]:
two b
three c
four d
dtype: object
2.3ブール値のインデックス
s3 = pd.Series([89, 92, 70, 95], index = ['小明', '小红', '小兰', '小花'])
-----------------------------
[out]:
小明 89
小红 92
小兰 70
小花 95
dtype: int64
私たちは、人々が90より大きいスコア選出します。一人一人のスコアが90以上であるかどうかを判断するためにまず必要性:
print(s3 > 90)
-----------------------------
[out]:
小明 False
小红 True
小兰 False
小花 True
dtype: bool
そして、全ての決意の結果がTrue一部で抽出することができたブールシリーズを使用します。
print(s3[s3 > 90])
-----------------------------
[out]:
小红 92
小花 95
dtype: int64