2014-04-04 119 views
0

Qualtrics是一個相當流行的調查平臺。您可以將調查數據下載爲CSV文件。有一個關於Qualtrics CSV文件夫婦怪癖:如何將Qualtrics csv文件導入到熊貓數據框中?

  1. 與BOM字符
  2. 它們包括額外的信息行解釋變量是什麼
  3. 他們經常包含在列括號和週期的開始名。

我已經能夠應付#1和#2用下面的代碼:

import pandas as pd 
df = pd.read_csv('qualtrics_survey.csv', skiprows=[1], encoding='utf-8-sig') 

我運行下面的代碼,我看到所有列的列表,包括,括號和週期。

list(df.columns.values) 

有一列叫做turk.1。但是,我無法運行:

df.turk.1 

我不確定加載文件的最佳方式是什麼。我會很好地移除所有括號,並用破折號或其他東西替換句點。

回答

4

您可以使用df['col']表示法而不是df.col來選擇一列。出於這個原因,這個符號實際上是首選。

如果您不想這樣做,您也可以在讀入數據後使用rename方法重命名列。您可以手動執行此操作:

df = df.rename(columns={'turk.1': 'other_name'}) 

或提供例如,功能用下劃線代替所有階段:

df = df.rename(columns=lambda x: x.replace('.', '_')) 
+0

謝謝 - 我不知道有關訪問列替代語法沒有。 – Jim

+0

重命名代碼也很有幫助。可能很有必要指出,爲了使更改永久化,完整的代碼將是:df.rename(columns = lambda x:x.replace('。','_'),inplace = True)或df = df .rename(columns = lambda x:x.replace('。','_')) – Jim

+0

確實,更新了答案。 – joris