반응형
질문
나는 다음과 같이 엑셀 문서에서 가져온 데이터프레임 df
를 가지고 있습니다:
cluster load_date budget actual fixed_price
A 1/1/2014 1000 4000 Y
A 2/1/2014 12000 10000 Y
A 3/1/2014 36000 2000 Y
B 4/1/2014 15000 10000 N
B 4/1/2014 12000 11500 N
B 4/1/2014 90000 11000 N
C 7/1/2014 22000 18000 N
C 8/1/2014 30000 28960 N
C 9/1/2014 53000 51200 N
나는 for루프를 실행하고 각 클러스터마다 엑셀 워크시트를 생성하기 위해 열 1의 내용인 df['cluster']
을 리스트로 반환하고 싶습니다.
또한, 전체 열이나 행의 내용을 리스트로 반환하는 것도 가능한가요? 예를 들면,
list = [], list[column1] 또는 list[df.ix(row1)]
답변
판다스 DataFrame 열은 가져올 때 판다스 Series입니다. 이후에는 x.tolist()
를 호출하여 이를 Python 리스트로 변환할 수 있습니다. 또는 list(x)
로 캐스팅할 수도 있습니다.
import pandas as pd
data_dict = {'one': pd.Series([1, 2, 3], index=['a', 'b', 'c']),
'two': pd.Series([1, 2, 3, 4], index=['a', 'b', 'c', 'd'])}
df = pd.DataFrame(data_dict)
print(f"DataFrame:\n{df}\n")
print(f"column types:\n{df.dtypes}")
col_one_list = df['one'].tolist()
col_one_arr = df['one'].to_numpy()
print(f"\ncol_one_list:\n{col_one_list}\ntype:{type(col_one_list)}")
print(f"\ncol_one_arr:\n{col_one_arr}\ntype:{type(col_one_arr)}")
출력 결과:
DataFrame:
one two
a 1.0 1
b 2.0 2
c 3.0 3
d NaN 4
column types:
one float64
two int64
dtype: object
col_one_list:
[1.0, 2.0, 3.0, nan]
type:<class 'list'>
col_one_arr:
[ 1. 2. 3. nan]
type:<class 'numpy.ndarray'>
반응형
'Python > Python FAQ' 카테고리의 다른 글
Python 인자로 튜플을 확장하기, Expanding tuples into arguments (0) | 2023.10.05 |
---|---|
Python Django에서의 OneToOneField() vs ForeignKey(), OneToOneField() vs ForeignKey() in Django (0) | 2023.10.05 |
Python 축 눈금 라벨 회전, Rotate axis tick labels (0) | 2023.10.05 |
Python 명령 줄에서 함수 실행하기, Run function from the command line (0) | 2023.10.05 |
Python 파이썬에서 집합에 값을 추가하십시오., Append values to a set in Python (0) | 2023.10.05 |
댓글