답변:
import numpy as np
df1 = df.replace(np.nan, '', regex=True)
도움이 될 수 있습니다. 모든 NaN을 빈 문자열로 바꿉니다.
import numpy as np
.
pd.np.nan
원치 않는 경우 import numpy
.
pd.DataFrame.from_dict(eval(_string_))
... inplace=True
옵션 을 언급하는 것도 유용합니다 .
파일에서 데이터 프레임을 읽는 경우 (예 : 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('')
xl.parse('sheet_name', na_filter=False)
인쇄 할 때 잘 렌더링되도록 형식을 지정하려는 경우 포맷터를 사용하십시오 . df.to_string(... formatters
불필요하게 DataFrame을 수정하거나 메모리를 낭비하지 않고을 사용하여 사용자 지정 문자열 형식을 정의하십시오.
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
print df.fillna('')
자체적으로 (하지 않고 df = df.fillna('')
) 원본도 수정하지 않습니다. 사용하는 데 속도 나 다른 이점이 to_string
있습니까?
df.fillna('')
!
np.nan
에서 왔습니까? 나는 그것을 사용할 수 없습니다