Python/Python Pandas
Python Pandas & openpyxl : number_format (숫자의 format 정하기)
CosmosProject
2024. 2. 26. 22:46
728x90
반응형
cell 객체의 number_format을 이용하면 숫자의 형식을 지정할 수 있습니다.
import pandas as pd
dict_test = {
'col1': [1, 2, 3, 4, 5],
'col2': ['a', 'b', 'c', 'd', 'e'],
'col3': [1234, 0.27383720, 39372, None, 102947291.293472],
'col4': [0.9, 0.5238, 0.13, 0.0028, 1024.29278],
}
df_test = pd.DataFrame(dict_test)
xlsx_writer = pd.ExcelWriter('test.xlsx', engine='openpyxl')
df_test.to_excel(xlsx_writer, sheet_name='test', index=False)
worksheet = xlsx_writer.sheets['test']
tup_cells = worksheet['C:C'] # C:C 범위에 있는 Cell 참조 (단, data set이 있는 범위의 Cell만 참조)
for cell in tup_cells:
cell.number_format = '#,##0.00' # 얻어진 각각의 Cell에 대한 number format을 설정
tup_cells = worksheet['D:D'] # C:C 범위에 있는 Cell 참조 (단, data set이 있는 범위의 Cell만 참조)
for cell in tup_cells:
cell.number_format = '#,##0.00%' # 얻어진 각각의 Cell에 대한 number format을 설정
xlsx_writer.close()
위 코드의 결과는 다음과 같습니다.
C column에 있는 숫자의 format은 #,##0.00으로,
D column에 있는 숫자의 format은 #,##0.00%의 % format으로 바뀐 것을 알 수 있습니다.
728x90
반응형