2012-09-20 39 views
-1

我的代碼需要使用'set_index'。如何在DataFrame上調用set_index()?

我輸入:

import sys 

import io 

import csv 

import math 

from pandas import * 

import numpy as np 

我認爲這就夠了。它沒有,因爲我收到:

NameError:名稱set_index未定義。

我使用PyPI(Riverbank computing)中的iPython EPDFree和pandas。有沒有我忽略的模塊?

+2

您需要顯示您嘗試使用'set_index'的實際代碼。 – BrenBarn

回答

4

set_index()是一個方法 DataFrames,而不是一個獨立的功能。你是否把它稱爲一種方法,例如df.set_index(idx)?如果你這樣做,它仍然給你那個NameError嗎?

+0

非常感謝@Harel,我在模塊裏把它當作一個函數來思考。 我有一個日期,時間的列表。我試圖循環遍歷每個日期。每次列出日期都會重複。 (總是一樣 #)。有62,035行。我說: 數據= read_csv(文件) IDF = data.set_index([ '日期', '時間']) 在IDF((日期,時間),數據): #或者我也嘗試 - 對於IDF: 做些什麼... 我得到IndexError:'列表索引超出範圍'。你有什麼想法,爲什麼這可能會發生? –

+0

假設「日期」和「時間」是數據的列標籤,您只需要idf = data.set_index(['date','time']),另請參閱: http://pandas.pydata.org/ pandas-docs/stable/indexing.html?highlight = set_index#add-an-index-using-dataframe-columns –

+0

錯誤是IndexError:'列表索引超出範圍'。使用以下兩行代碼後: idf = data.set_index(['date','time']); (((日期,時間),數據)的 : –

相關問題