2016-11-20 1 views
0

csv 모듈이 있다는 것을 알고 있지만 현재 프로젝트에서는 csv 파일을 호출하기 위해 모듈을 사용할 수 없습니다.Python 2.7 - transposed csv 파일에서 개별 열을 호출하는 방법

내 코드는 다음과 같습니다.

table = [] 
for line in open("data.csv"): 
data = line.split(",") 
table.append(data) 
transposed = [[table[j][i] for j in range(len(table))] for i in range(len(table[0]))] 
rows = transposed[1][1:] 
rows = [float(i) for i in rows] 

그래서이 하루 종일 인터넷을 수색하고 해결책을 찾기 위해 투쟁 봤는데, 아마 대규모 기본적인 질문 파이썬 정말 새로운 해요. 필요한 모든 개별 열의 데이터를 호출하여 분석 할 수 있어야합니다. 감사합니다.

답변

0

귀하의 데이터는 목록의 목록으로 구성되어 있습니다. 각 하위 목록은 행을 나타냅니다. 이것을 더 잘 설명하기 위해, 나는 읽는 것이 더 어렵 기 때문에 목록 내포를 사용하는 것을 피할 것입니다. 또한 'i'와 'j'와 같은 변수를 사용하지 말고 대신 행이나 열과 같은 더 유용한 이름을 사용하십시오. 다음은이 작업을 수행하는 방법에 대한 간단한 예입니다.

def read_csv(): 
    table = [] 
    with open("data.csv") as fileobj: 
     for line in fileobj.readlines(): 
      data = line.strip().split(',') 
      table.append(data) 
    return table 

def get_column_data(data, column_index): 
    column_data = [] 
    for row in data: 
     cell_data = row[column_index] 
     column_data.append(cell_data) 
    return column_data 


data = read_csv() 
get_column_data(data, column_index=2) #example usage 
관련 문제