[Pandas] 1. Pandasライブラリ(Series)


パンダって何?


Pythonパッケージは、リレーショナルまたはラベル型のデータによって簡単に直感的に動作し、迅速で柔軟なデータ構造を提供することを目的としています.

パンダの主な機能


  • Pythonデータ構造との互換性

  • ビッグデータの高速インデックス、スライス、ソート

  • 2つのデータ間のjoin

  • データの回転、グループ化

  • 統計データと可視化データ

  • 外部データをpandasデータ構造に格納および出力する

    パンダの資料構造


    pandasのデータ構造を使用する前に、pandasライブラリをインポートしてください.
  • import pandas as pd
    from pandas import Series, DataFrame

    Seriesとは

  • 1次元データ
  • (index-value),
  • Pythonデータ構造を使用したシリーズの作成


    PandasライブラリシリーズはPythonの各種データ構造と互換性がある.

    list

    data = pd.Series([1,2,3,4])

    tuple

    data = pd.Series((1,2,3,4))

    numpy.array

    import numpy as np
    data = pd.Series(np.array([1,2,3,4]))

    Series関数として作成

    data = Series({1: 1, 2: 2, 3: 3, 4: 4})

    シリーズの表示

    data = Series([100, 200, 300], index=["사과", "배", "수박"])
    上記の果物の価格について言及したら、果物の価格を調べてみましょう.

    indexによるクエリー

    data.at["사과"]
    data["사과"]
    上記の2つの式は同じ結果を出力します.
    data[["사과", "배"]]
    上記の表現では、複数のインデックスを一度にクエリーできます.

    それ以外は.
    print("앞에서 2개 출력")
    print(data[0:2])  # 앞에서 2개
    print("뒤에서 2개 출력")
    print(data[-2:])  # 뒤에서 2개
    print("100보다 큰 data만 출력")
    print(data[data > 100])  # 100보다 큰 data만 출력
    等で形容することもできます!

    1シリーズの演算


    フルーツの価格が一括で上がり、一度に200をプラスしたい!
    data += 200
    data = data.add(200) # data.add()는 data값 변경 X
    上記の2つの式は同じ演算を実行します.

    2つの系列間の演算

    data = Series([100, 200, 300], index=["사과", "배", "수박"])
    newdata = Series([200, 500], index=["사과", "귤"])
    adddata = data+newdata
    print(adddata)
    上のコードの結果を確認してください.

    2つの系列間で重複するインデックスのみが演算され、残りのインデックスはNANとして格納されます.

    NANデータ処理


    Fill valueオプションを使用すると、NANが発生したときに特定の値に置き換えることができます。

    adddata = data.add(newdata, fill_value = 0)

    NANを0で置換

    adddata = data + newdata
    adddata = adddata.fillna(0)

    NaNに表示されるローを削除

    adddata = data + newdata
    adddata = adddata.dropna()

    統計


    describe関数


    データ統計を表示します.
    print(data.describe())
    print(data.describe()["count"])
    上記のインデックスを使用してアクセスできます.

    参考になるブログ


    https://programmerpsy.tistory.com/11