2016-12-02 3 views
1

각 항목에 대해 줄 바꿈을 사용하여 전자 메일 목록을 가져오고 있습니다. 복사 및 붙여 넣기를 한 다음 csv로 저장하고 스크립트에서 파이썬 목록을 만듭니다. 데이터. 붙여 넣기에서부터 부적절한 서식을 지정하는 파일이기 때문에, 바꾼다면 쉼표 대신 줄 바꿈을 사용합니다.하지만 열이 바뀌고 mylist.values와 같이 바뀌기 때문에 조금 더 나아 보이게됩니다. .tolist() 여전히 작동하지 않습니다. 여기에 내가 가진 것과 일어나는 일이 있습니다. 나는 내장 CSV 라이브러리를 사용하여이 작업을 수행 할 수 있지만 페이지에 난Python Pandas 데이터 프레임에서 목록으로 변환하는 열

이메일 형식을 어떻게하는지 궁금해서 붙여 넣기 :

폭스 치킨 고양이 내가 CSV에 넣어 개

그리고 쉼표를 넣어 :

폭스, 치킨, 고양이,

개를 무엇 나는 출력을 다시 얻을 :

mylist.values.tolist()

[['Fox, nan'], ['Chicken, nan'], ['Cat, nan'], ['Dog, nan']] 

난 그냥 원하는 :

['Fox','Chicken', 'Cat', 'Dog'] 

또한, 경우 my_list를 할당하려고합니다. = mylist.values.tolist() 지원되지 않는 피연산자 'str'과 'type'을 예외로받습니다.

팬더가 내장 된 것보다 더 좋아서 도움이 될 것입니다. 가능하지 않다면 다시 돌아 가야 할 것입니다.

+0

출력 내용을 정확하게 입력 했습니까? 그것은 [폭스, 난], [치킨], [난], [고양이], [난], [개], [나노]]이 아닌가? – DyZ

+0

어떤 종류가'mylist'입니까? 과제의 예외는 이상합니다. 어떻게 복제 할 수 있습니까? 예외의 작은 최소한이지만 완전한 예제를 넣어주세요. – eguaio

+0

당신이 맞습니다, 그것은 몇 백개의 MAC 주소입니다. 그래서 나는 복사하고 붙여 넣지 않았습니다, 미안 해요. – Fallacy11

답변

0

당신의 출력 (I 그것을 믿고있는) [['Fox', nan], ['Chicken', nan], ['Cat', nan], ['Dog', nan]] 경우, 다음 두 부분으로 목록을 압축을 해제 할 수 있습니다 :

names,nans=zip(*mylist.values.tolist()) 
# both names and nuns are tuples 
names = list(names) 
+1

약간 이상하다고 생각 하겠지만,'tolist()'메서드는 질문에 명시된 바와 같이 쉼표로 구분 된 모든 값을 인코딩하는 문자열 목록을 실제로 반환합니다. 이것은 작동하지 않습니다. – eguaio

+0

정말 이상합니다. – DyZ

0

시도 :

slist = mylist.values.tolist() 
ilist = [l[0].split(',')[0].strip() for l in slist] 
0

복사 - 붙여 넣기에서 서식 어떻게 든 팬더가 당신에게 (4 x 2) 테이블을 준다고 생각하게 만듭니다. 따라서이 특별한 경우 데이터 프레임이 mylist 인 경우 mylist.iloc[:,0].values.tolist()이 필요합니다.

실제로 파일을 문자열로 읽고 .split()을 호출하는 것이 훨씬 간단하고 빠르며 강력합니다.

관련 문제