[pandas] csv 파일에서 따옴표 안의 콤마(,)는 seperator로 적용하고 싶지 않을 때
csv 파일에서 따옴표 안의 comma(,)는 seperator로 적용하고 싶지 않을 때 예 Issue,Content Test,"A, B" Test,"A, B, C" 위와 같은 csv 파일이 있을 때 Test 다음의 콤마(,)는 seperator로 적용하고 싶지만 "A,B"의 콤마는 seperator로 적용하고 싶지 않아서 따옴표(")에 묶여있다. 이때는 read_csv 함수의 quotechar인자를 사용하면 된다 예제코드 import io csvs = ''' Issue,Content Test,"A, B" Test,"A, B, C" ''' url = io.StringIO(csvs) csv 파일로 실습해야 하지만 문자열을 csv 파일처럼 읽게 해주는 StringIO 함수를 사용해서 마치 csv 파일의 ur..
2023. 9. 5.
[python] 여러 개의 변수를 반복문으로 생성하는 방법
예제a = [1, 3, 4, 5, 6] 리스트 a를 이용해 인덱싱을 하면 값을 반환할 수 있다. print(a[0])1 a[0] 뿐 아니라 a[1], a[2], a[3] 등등으로 다른 값도 불러올 수 있다. 이 때 a의 원소를 순서대로 다른 변수로 지정하려면 예를들어 a0 = 1, a1 = 3, ..., a[4] = 6 이렇게 변수를 동시에 생성하려면 globals 함수를 사용하면 된다 for i, data in enumerate(a): globals()['a{}'.format(i)] = data 확인해보자print(a0)1 a0라는 변수에 1이 지정된 것을 알 수 있다. 다만, 이 방법은 파이썬에서 권장되는 방식은 아니다. 각 배열의 값을 새로운 변수로 할당하지 않고 처음에 했던 a[0..
2023. 9. 5.
집계 결과를 열로 만드는 방법
groupby + transform을 사용하면 집계 결과를 열로 만들 수 있다. 먼저 다음 예제 코드를 보자 import pandas as pd data = {'학생': ['김판다', '강승주', '조민영', '최진환', '박연준', '고준희'], '반': ['A', 'A', 'B', 'B', 'B', 'C'], '점수': [0, 100, 20, 40, 60, 30]} df = pd.DataFrame(data) 이 df를 활용해 그림처럼 소속반의 평균이 담긴 열을 만들어보자 예를 들어 A반의 학생은 첫번째 행의 김판다와 두번째 행의 강승주이다. 둘의 점수가 0점과 100점이니 A반의 평균은 50이 되고 A반 소속인 김판다와 강승주의 데이터는 반평균열에서 둘다 50이 된다 방법 groupby + trans..
2023. 8. 30.