팬더, 빈 끈으로 NaN 대체
아래와 같은 Panda Dataframe을 가지고 있습니다.
1 2 3
0 a NaN read
1 b l unread
2 c NaN read
다음과 같이 빈 문자열로 NaN 값을 삭제합니다.
1 2 3
0 a "" read
1 b l unread
2 c "" read
df = df.fillna('')
아니면 그냥
df.fillna('', inplace=True)
이것은 Na(예: NaN)를 다음과 같이 채운다.''
.
단일 열을 채우려면 다음을 사용할 수 있습니다.
df.column1 = df.column1.fillna('')
사용할 수 있다df['column1']
대신df.column1
.
import numpy as np
df1 = df.replace(np.nan, '', regex=True)
이게 도움이 될 거야모든 NaN이 빈 문자열로 대체됩니다.
파일(CSV 또는 Excel 등)에서 데이터 프레임을 읽는 경우 다음을 사용합니다.
df.read_csv(path , na_filter=False)
df.read_excel(path , na_filter=False)
그러면 빈 필드가 자동으로 빈 문자열로 간주됩니다.''
데이터 프레임이 이미 있는 경우
df = df.replace(np.nan, '', regex=True)
df = df.fillna('')
인쇄 시 올바르게 렌더링되도록 포맷하는 경우에만 포맷터를 사용하십시오.를 사용합니다.df.to_string(... formatters
데이터 프레임을 불필요하게 변경하거나 메모리를 낭비하지 않고 커스텀 문자열 포맷을 정의하려면 다음과 같이 하십시오.
df = pd.DataFrame({
'A': ['a', 'b', 'c'],
'B': [np.nan, 1, np.nan],
'C': ['read', 'unread', 'read']})
print df.to_string(
formatters={'B': lambda x: '' if pd.isnull(x) else '{:.0f}'.format(x)})
입수 방법:
A B C
0 a read
1 b 1 unread
2 c read
이거 드셔보세요.
더하다inplace=True
import numpy as np
df.replace(np.NaN, '', inplace=True)
사용.keep_default_na=False
도움이 됩니다.
df = pd.read_csv(filename, keep_default_na=False)
Data Frame을 JSON으로 변환하는 경우NaN
오류가 발생하므로 이 사용 예에서 가장 좋은 해결책은 교환하는 것입니다.NaN
와 함께None
.
방법은 다음과 같습니다.
df1 = df.where((pd.notnull(df)), None)
문자열 값 열 하나를 nan으로 시도했습니다.
nan을 제거하고 빈 문자열을 채우려면:
df.columnname.replace(np.nan,'',regex = True)
nan을 제거하고 일부 값을 채우려면:
df.columnname.replace(np.nan,'value',regex = True)
df.iloc도 해봤어요.열 색인이 필요해요테이블을 다시 들여다보셔야 합니다.위의 방법은 단순히 한 단계만 줄였다.
언급URL : https://stackoverflow.com/questions/26837998/pandas-replace-nan-with-blank-empty-string
'programing' 카테고리의 다른 글
PHP에서 cURL 오류를 캐치하는 방법 (0) | 2022.12.01 |
---|---|
다른 어레이를 기반으로 키를 기준으로 어레이를 정렬하시겠습니까? (0) | 2022.12.01 |
PHP MySQLI SQL 주입 방지 (0) | 2022.12.01 |
collections.defaultdict는 어떻게 작동합니까? (0) | 2022.12.01 |
컴포넌트가 재렌더되는 원인을 특정하는 방법 (0) | 2022.12.01 |