2014-11-27 2 views
3

광산과 관련된 다른 질문을 찾을 수 없습니다. 내가 놓친 경우 팬더가 문자열을 nan으로 읽도록합니다.

내가 이렇게 찾고 CSV 파일을 가지고 ..., 링크가 제발 도와주세요 : 팬더가 read_csv와

"concentration" 
"5" 
"5" 
"5" 
"5" 
"5" 

"nan" 
"nan" 
"nan" 
"nan" 
"nan" 

나는 그것을 읽을 경우 "유모"값이 자동으로됩니다 NaN으로 해석됩니다. 그러나 나는 그들을 문자열로 유지하고 싶습니다. NaN이어야하는 누락 된 값은 7 행에 있습니다 (실제로는 아무 것도 쓰이지 않습니다).

df = pd.read_csv(path, dtype= {'concentration': 'string'}, quoting = csv.QUOTE_NONNUMERIC, sep=',') 

아무도 도와 드릴까요 :

나는이처럼 읽으려고?

답변

2

keep_default_nana_values처럼 사용할 수 있습니다. docs에서 :

na_values : list-like or dict, default None 
Additional strings to recognize as NA/NaN. If dict passed, specific per-column NA values 

keep_default_na : bool, default True 
If na_values are specified and keep_default_na is False the default NaN values are overridden, otherwise they’re appended to 

그래서 여기에 코드를

pd.read_csv('c:\\temp\\temp.txt', keep_default_na=False, na_values=['']) 

    concentration 
0    5 
1    5 
2    5 
3    5 
4    5 
5   NaN 
6   nan 
7   nan 
8   nan 
9   nan 
10   nan 
+0

있어 그리고 당신은 다른 사람을 지정하려면,이'na_values' 때와 수 – joris