Python Pandas를 이용한 데이터 처리 - DataFrame
DataFrame은 전 포스팅에서 다뤘던 Series 타입을 연결한 것이다. Series가 1차원이면 DataFrame은 2차원 리스트 또는 배열이라고 생각하면 된다. DataFrame은 딕셔너리를 기반으로 만들 수 있으며, 아래와 같이 사용하면 된다. 참고로 딕셔너리는 Key: Value 로 이루어져있고, Key 부분이 열이 된다. Class= { "name":["a","b","c","d"], "id":[1,2,3,4], "date":[6.12,4.31,5.21,3.11] } class_df = pd.DataFrame(Class) print (class_df) 의 결과는 다음과 같다. 간단하네요. 다음포스팅에서는 실제 데이터베이스에서 데이터 불러와서 사용하는 방법 (CSV)를 포스팅 하겠습니다.
Python Pandas를 이용한 데이터 처리 - Series
팬더스의 경우 파이썬의 데이터 타입을 그대로 사용하지 않는다. 처리속도를 높이기 위해서 numpy의 데이터 타입을 확장해서 사용한다. 팬더스의 고유 데이터타입은 2가지인데, Series와 DataFrame 다. Series 데이터 타입 만들기 Series는 1차원 배열이며 숫자로 된 인덱스를 갖지만 사용가의 지정에 따라 인덱스의 이름을 가질 수 있다. 예시입니다. s = pd.Series(["m","i","u","h",3,9,4]) print(s) 의 결과는 다음과 같습니다. pandas를 사용하는 이유가 인덱스를 설정할 수 있기 때문입니다. Series도 마찬가지로 다음과 같이 인덱스를 설정할 수 있습니다. s = pd.Series(["m","i","u","h",3,9,4], index=["a","b"..
리스트와 numpy 문제 => 해결
이전 포스팅에서 리스트에 대해서 문제가 발생했었다. 문제가 되는 리스트 선언 부분을 확인해보자. 선언 방식을 보면 행과 열 사이에 *로 표시되었다. 해당 방식을 사용하면 객체의 복사가 아니라 레퍼런스의 복사가 일어나서 하나의 값을 수정하면 다른 행의 값도 바뀌게 된다. 무슨말인지 모르겟다면 다음의 예시를 보면 될 것 같다.! TEST = [ [0] * 4] * 3 print(TEST) 결과: [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]] 여기서 TEST[0][0]에 임의의수를 대입하면 어떻게 될까? TEST[0][0] = print(TEST) 결과: [[3, 0, 0, 0], [3, 0, 0, 0], [3, 0, 0, 0]] 보다싶이 값이 동일한 부분에 다 들어가는 문제가 ..