【发布时间】:2020-10-15 19:46:10
【问题描述】:
我有一个包含实验参数的文件,其中每一行是不同的试验,每列是实验的单独参数,因此在每次试验时选择不同的参数组合,例如声音和文本,例如。 “声音”:蓝色,“文本”:红色等。
这些参数存储在 csv 中并使用 pandas 打开:
parameters = pd.read_csv('Parameters.csv')
Sound_list = parameters['Sound']
Text_list = parameters['Text']
for 循环正在遍历 Psychopy 中的实验循环(不是参数列表本身),但即使使用以下内容我也无法使其工作。
for i in range(0,10):
n = range(0,len(Sound_list),1)
index = random.choice(n)
Sound_to_play = Sound_list.pop(index)
Text_to_show = Text_list.pop(index)
我正在尝试从列表中弹出每个试验,以便每个组合显示相同的次数但是我收到以下错误:
Traceback (most recent call last):
File "<ipython-input-4-9fe2444288e3>", line 4, in <module>
Sound_to_play = Sound_list.pop(index)
File "/opt/anaconda3/lib/python3.7/site-packages/pandas/core/generic.py", line 790, in pop
result = self[item]
File "/opt/anaconda3/lib/python3.7/site-packages/pandas/core/series.py", line 871, in __getitem__
result = self.index.get_value(self, key)
File "/opt/anaconda3/lib/python3.7/site-packages/pandas/core/indexes/base.py", line 4405, in get_value
return self._engine.get_value(s, k, tz=getattr(series.dtype, "tz", None))
File "pandas/_libs/index.pyx", line 80, in pandas._libs.index.IndexEngine.get_value
File "pandas/_libs/index.pyx", line 90, in pandas._libs.index.IndexEngine.get_value
File "pandas/_libs/index.pyx", line 138, in pandas._libs.index.IndexEngine.get_loc
File "pandas/_libs/hashtable_class_helper.pxi", line 997, in pandas._libs.hashtable.Int64HashTable.get_item
File "pandas/_libs/hashtable_class_helper.pxi", line 1004, in pandas._libs.hashtable.Int64HashTable.get_item
KeyError: 0
有谁知道如何解决这个问题?谢谢!
【问题讨论】:
-
您没有显示完整的回溯。它也不是一个列表,它是一个系列。
-
嗨!对不起,我现在已经编辑了! :)
标签: python pandas loops indexing