2016-07-15 1 views
0

팬더를 사용하여 null 값 대신 "no comm"문자열을 어떻게 얻을 수 있습니까?파이썬에서 pandas를 사용하여 null 값 대신 "no comm"문자열을 어떻게 얻을 수 있습니까?

emp.csv

내가 열 통신은 팬더를 사용하는 방법에 대한 아래의 결과를 얻으려면
index empno ename job mgr hiredate sal comm deptno 
0, 7839, KING, PRESIDENT, 0, 1981-11-17,  5000, , 10 
1, 7698, BLAKE, MANAGER, 7839, 1981-05-01, 2850, , 30 
2, 7782, CLARK, MANAGER, 7839, 1981-05-09, 2450, , 10 
3, 7566, JONES, MANAGER, 7839, 1981-04-01, 2975, , 20 
4, 7654, MARTIN, SALESMAN, 7698, 1981-09-10, 1250, 1400, 30 
5, 7499, ALLEN, SALESMAN, 7698, 1981-02-11, 1600, 300, 30 
6, 7844, TURNER, SALESMAN, 7698, 1981-08-21, 1500, 0, 30 
7, 7900, JAMES, CLERK,  7698, 1981-12-11, 950,  , 30 
8, 7521, WARD, SALESMAN, 7698, 1981-02-23, 1250, 500, 30 
9, 7902, FORD, ANALYST, 7566, 1981-12-11, 3000, , 20 
10, 7369, SMITH, CLERK,  7902, 1980-12-09, 800,  , 20 
11, 7788, SCOTT, ANALYST, 7566, 1982-12-22, 3000, , 20 
12, 7876, ADAMS, CLERK,  7788, 1983-01-15, 1100, , 20 
13, 7934, MILLER, CLERK,  7782, 1982-01-11, 1300, , 10 

.

결과 :

내가 bleow에 코드를 사용하여 결과 위 싶어
no comm 
no comm 
no comm 
no comm 
1400 
300 
0 
no comm 
500 
no comm 
no comm 
no comm 
no comm 
no comm 

.

코드 :

import sys 

import pandas as pd 
import dateutil 



import pandas as pd 
import io 

temp=u"""index empno ename job mgr hiredate sal comm deptno 
0, 7839, KING, PRESIDENT, 0, 1981-11-17,  5000, , 10 
1, 7698, BLAKE, MANAGER, 7839, 1981-05-01, 2850, , 30 
2, 7782, CLARK, MANAGER, 7839, 1981-05-09, 2450, , 10 
3, 7566, JONES, MANAGER, 7839, 1981-04-01, 2975, , 20 
4, 7654, MARTIN, SALESMAN, 7698, 1981-09-10, 1250, 1400, 30 
5, 7499, ALLEN, SALESMAN, 7698, 1981-02-11, 1600, 300, 30 
6, 7844, TURNER, SALESMAN, 7698, 1981-08-21, 1500, 0, 30 
7, 7900, JAMES, CLERK,  7698, 1981-12-11, 950,  , 30 
8, 7521, WARD, SALESMAN, 7698, 1981-02-23, 1250, 500, 30 
9, 7902, FORD, ANALYST, 7566, 1981-12-11, 3000, , 20 
10, 7369, SMITH, CLERK,  7902, 1980-12-09, 800,  , 20 
11, 7788, SCOTT, ANALYST, 7566, 1982-12-22, 3000, , 20 
12, 7876, ADAMS, CLERK,  7788, 1983-01-15, 1100, , 20 
13, 7934, MILLER, CLERK,  7782, 1982-01-11, 1300, , 10""" 
#after testing replace io.StringIO(temp) to filename 
emp = pd.read_csv(io.StringIO(temp), 
       skipinitialspace=True, 
       skiprows=1, 
       parse_dates=[5], 
       names=['index','empno','ename', 'job','mgr','hiredate','sal','comm','deptno']) 


               <-------------- ? 


print(emp['comm']) 

답변

2

이 그냥이 사이트에 형식이 될 수 있지만,이 숫자의 나머지 부분에 들여 쓰기 다른 수준에서 1400, 300, 0과 500처럼 보이는 왜 그것이 반환되지 않을 것입니까

+0

당신의 대답은 옳습니다. 이 사이트의 코드 결과는 다음과 같습니다. {0 NaN이 1 NaN이 2 NaN이 3 NaN이 4 1400.0 5 300.0 6 0.0 7 NaN이 8 500.0 9 NaN이 10 NaN이 11 NaN이 12 NaN이 13 NaN이} –

+1

답 감사 –

관련 문제