データ分析用のライブラリ.1


モジュール


コードが長くなる場合、すべての関数と変数を実現することはできません.
->誰かが作った関数や変数などを利用!
特定の目的を持つ関数、資料の会議

モジュールを使用!


importキーを使用したモジュールの有効化
モジュールで使用する関数/変数の使用方法を決定します.
.(dot)を書き込み、モジュール内の関数/変数aモジュールを使用します.b関数
import random

print(random.randrange(0,2))
必要なコンテンツを含むモジュールを作成できます.pyにできます.
1.pyファイルを作成した後、関数と変数を作成します.
cal.py

def plus(a,b):
	c = a + b
    return c

  • 別のファイルで作成したpyファイルを読み込みます.


  • 読み込まれたモジュールの関数と変数の使用
  • import cal
    print(cal.plus(3,4)) # 7

    小包


    フォルダ管理モジュール

    ex.
    1.輸入活用
    import user.cal
    
    print (cal.plus(3,4))
  • from-import -> from a import b
  • from user.cal import plus
    
    print(plus(3,4)) # -> cal.plus()라고 안해도 됨!
    quick->urlの取得(必須)

    Numpy


    数値Python
    大規模な多次元配列の処理を支援するライブラリ
    代表的なライブラリ
    1.pandas
    2.numpy
    3.matplotlib
    Why use Numpy?
    ほとんどのデータは数字で並べられているからです!
    文を繰り返すことなく並べ替える
    Pythonリストに比べて、より高速なコンピューティングとより効率的なメモリ使用をサポート

    numpy配列を作成し、出力シェイプを確認します.
    ndarray=n次元配列(n次元配列)
    import numpy as np
    np_arr = np.array(range(5))
    print(np_arr)		# -> [0 1 2 3 4] -> 공백으로 구분 **리스트는 , 으로구분됨**
    print(type(np_arr)) # -> <class 'numpy.ndaray'>
    

    配列の基礎


    Pythonリストとは異なり、同じデータ型しか格納できません!
    d type
    arr = np.array([0,1,2,3,4],dtype=float)
    print(arr)		# ->[0.1.2.3.4.]
    print(arr.dtype)	# -> 'float64'
    print(arr,astype(int))	# -> [0 1 2 3 4]

    配列のプロパティ
    カレンダー次元に関連するプロパティ:ndim&shape(n+dimension)
    #1차원 배열
    list = [0,1,2,3]
    arr = np.array(list)
    print(arr.ndim)	# -> 1
    print(arr.shape) # -> (4,)
    
    #2차원 배열
    list = [[0,1,2],[3,4,5]]
    arr = np.array(list)
    print(arr.ndim)  # -> 2
    print(arr.shape) # -> (2,3)

    Indexing&Slicing


    索引:索引を使用した値の検索
    ex.
    #1차원
    x = np.arange(7)
    print(x) # -> [0 1 2 3 4 5 6]
    print(x[3]) # -> 3
    print(x[7]) # -> IndexError: index 7 is out of bounds
    x[0] = 10
    print(x) # [10,1,2,3,4,5,6]
    
    #2차원
    x = np.arange(1,13,1) -> 1부터 12까지 1씩증가
    x.shape = 3,4
    print(x) # -> [[1 2 3 4]
    	       [5 6 7 8]
                   [9 10 11 12]]
                   
    print(x[2,3]) # -> 12
    スライス:配列の一部をインデックスとして取得する値
    #1차원 배열
    x = np.arange(7)
    print(x) # -> [0 1 2 3 4 5 6]
    print(x[1:4])  # -> [1 2 3]
    print(x[1:])   # -> [1 2 3 4 5 6]
    print(x[::2])  # -> [0 2 4 6]     ::2 마지막 꺼는 간격
    
    #2차원 배열
    x = np.arange(1,13,1)
    x.shape = 3,4
    print(x) # -> [[1 2 3 4]
    	       [5 6 7 8]
                   [9 10 11 12]]
    print(x[1:2,:2:3]) # -> [[5]]
    print(x[1:2,:2])   # -> [[5 6]
    						[9 10]]
            
    Boolean indexing
    Boolean maskを使用して、アレイ内の各要素の選択方法を指定します.
    条件を満たすデータを取得し、「真」|「偽」であるかどうかを通知します.
    x = np.arange(7)
    
    print(x[x < 3])  # -> [0 1 2]
    print(x[x % 2 == 0])  # -> [0 2 4 6]
    
    fancy indexing
    インデックス配列を渡すことで、配列内の各要素の選択(検索する場所のインデックス値を表示)を指定する方法
    #1차원 배열
    x = np.arange(7)
    print(x[[1,3,5]])   # -> [1 3 5]
    
    #2차원 배열
    x = np.arange(1,13,1).reshape(3,4)
    
    print(x[[0,2]]) # -> [[1 2 3 4]
    		      [9 10 11 12]]