판다 데이터 프레임 열에 쉼표를 수천 개의 구분 기호로 삽입하는 방법은 무엇입니까?
쉽게 볼 수 있도록 쉼표 천 구분 기호를 사용하도록 달러 금액 열을 포맷하려고 하는데 알 수가 없습니다.누가 길 좀 가르쳐 주시겠어요?
import pandas as pd
df = pd.read_excel('filename.xlsx')
df['Dollar Amount'].head()
Index Dollar Amount
0 5721.48
1 4000.00
2 4769.00
3 824.07
4 643.60
5 620.00
Name: Dollar Amount, dtype: float64
변환할 것입니다.float
에 타자를 치다.object
df.DollarAmount.apply(lambda x : "{:,}".format(x))
Out[509]:
0 5,721.48
1 4,000.0
2 4,769.0
3 824.07
4 643.6
5 620.0
Name: DollarAmount, dtype: object
이것은 수천 개의 분리기를 얻기 위한 더 매력적인 방법입니다.
df['Dollar Amount']=df['Dollar Amount'].apply('{:,}'.format)
다음은 다음을 사용하는 솔루션입니다.locale
번호를 문자열로 포맷하는 데 문제가 없는 한 도움이 될 수 있습니다.
import pandas as pd
import locale as lc
# Get the list of all locale options
all_locales = lc.locale_alias
# I'll use US conventions since that's what you mentioned in your question
lc.setlocale(lc.LC_ALL,all_locales["en_us"])
df = pd.DataFrame({"Dollar Amount":[1000, 2000000, 2500.01]})
df["Dollars Formatted"] = df["Dollar Amount"].apply(lambda x: "$"+lc.format("%.2f",x,True))
편리한 점은locale
필요에 따라 서로 다른 숫자 표기법을 쉽게 바꿀 수 있으며, 수백만과 수십억 구분자에 대해 이러한 표기법을 계속 적용할 수 있습니다.
지도 사용:
df['Dollar Amount'] = df['Dollar Amount'].map("{:,}".format)
당신은 또한 더 멋진 스타일을 사용할 수 있고 당신의 모든 스타일링을 한 줄로 할 수 있습니다.
df = df.style.format({'Dollar Amount': "{:,}"})
특정 열에 수천 개의 쉼표 구분 기호를 삽입하고 소수점을 제거해야 하는 경우:
import pandas as pd
df = pd.DataFrame([(0.21, 1000.0), (0.01, 2000000.0), (0.66, 1000.0), (0.21, 330000.0)], columns=['A', 'B'])
이전:
A B
0 0.21 1000.0
1 0.01 2000000.0
2 0.66 1000.0
3 0.21 330000.0
"Col B"의 경우 쉼표 구분 기호를 삽입하고 소수점을 제거합니다.위의 YOBEN_S 코드를 약간 조정하면 다음과 같은 이점이 있습니다.
lst = list(df.columns)
lst.remove('A')
for c in lst:
df[c] = df[c].astype(int).apply(lambda x: f'{x:,}')
이후:
A B
0 0.21 1,000
1 0.01 2,000,000
2 0.66 1,000
3 0.21 330,000
@Benny의 답변의 f 문자열 버전:
df = pd.DataFrame({'DollarAmount': [5012.82, 1203, 4000.0, 824.07, 625.0]})
df.DollarAmount.apply(lambda x: f"{x:,}")
0 5,012.82
1 1,203.0
2 4,000.0
3 824.07
4 625.0
Name: DollarAmount, dtype: object
언급URL : https://stackoverflow.com/questions/47404472/how-to-insert-a-comma-as-a-thousands-separator-in-a-pandas-dataframe-column
'programing' 카테고리의 다른 글
C#에서 Excel interop 개체를 안전하게 폐기하시겠습니까? (0) | 2023.09.04 |
---|---|
도커-공구함 마리애드브 용기 (0) | 2023.09.04 |
Ajax/jquery 기술로 페이지 내용을 미리 로드할 수 있습니까? (0) | 2023.09.04 |
AJAX 호출 시 다운로드 전에 window.on이 호출되지 않도록 할 수 있습니까? (0) | 2023.09.04 |
자바 수학bigInteger를 java.lang에 캐스팅할 수 없습니다.정수 (0) | 2023.09.04 |