Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays PythonDataFrame-ValueError:使用序列设置数组元素_Arrays_Python 3.x_Pandas_Dataframe_Tuples - Fatal编程技术网

Arrays PythonDataFrame-ValueError:使用序列设置数组元素

Arrays PythonDataFrame-ValueError:使用序列设置数组元素,arrays,python-3.x,pandas,dataframe,tuples,Arrays,Python 3.x,Pandas,Dataframe,Tuples,我在尝试访问使用元组作为列名称的Pandas数据帧的列时收到了这个神秘的错误消息 下面是一个简单的例子来说明和再现问题: -初始化- testDataFrame=pd.DataFrame(np.array([[8,1,2,3,9]]),columns=['Id1',(1, 'one'),(2, 'two'),(3, 'three'),'Id2'],dtype="object") -测验- testDataFrame[["Id2","Id1"]] #works testDataFrame[["

我在尝试访问使用元组作为列名称的Pandas数据帧的列时收到了这个神秘的错误消息

下面是一个简单的例子来说明和再现问题:

-初始化-

testDataFrame=pd.DataFrame(np.array([[8,1,2,3,9]]),columns=['Id1',(1, 'one'),(2, 'two'),(3, 'three'),'Id2'],dtype="object")
-测验-

testDataFrame[["Id2","Id1"]] #works

testDataFrame[["Id1","Id1"]] #works

testDataFrame[[(1, 'one'),"Id1"]] #works

testDataFrame[["Id1",(1, 'one')]] #return ValueError: setting an array element with a sequence
你知道列名的顺序有什么问题吗?为什么会出现这个错误

提前感谢您的见解

EDIT1:我的熊猫版本是:0.23.4

EDIT2:

以下是我收到的全部错误消息:

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-219-c5f714c2b560> in <module>
----> 1 testDataFrame[["Id1",(1, 'one')]]

~/anaconda3/envs/deep-learning/lib/python3.5/site-packages/pandas/core/frame.py in __getitem__(self, key)
   2680         if isinstance(key, (Series, np.ndarray, Index, list)):
   2681             # either boolean or fancy integer index
-> 2682             return self._getitem_array(key)
   2683         elif isinstance(key, DataFrame):
   2684             return self._getitem_frame(key)

~/anaconda3/envs/deep-learning/lib/python3.5/site-packages/pandas/core/frame.py in _getitem_array(self, key)
   2707     def _getitem_array(self, key):
   2708         # also raises Exception if object array with NA values
-> 2709         if com.is_bool_indexer(key):
   2710             # warning here just in case -- previously __setitem__ was
   2711             # reindexing but __getitem__ was not; it seems more reasonable to

~/anaconda3/envs/deep-learning/lib/python3.5/site-packages/pandas/core/common.py in is_bool_indexer(key)
    113     elif isinstance(key, list):
    114         try:
--> 115             arr = np.asarray(key)
    116             return arr.dtype == np.bool_ and len(arr) == len(key)
    117         except TypeError:  # pragma: no cover

~/anaconda3/envs/deep-learning/lib/python3.5/site-packages/numpy/core/numeric.py in asarray(a, dtype, order)
    499 
    500     """
--> 501     return array(a, dtype, copy=False, order=order)
    502 
    503 

ValueError: setting an array element with a sequence
---------------------------------------------------------------------------
ValueError回溯(最近一次调用上次)
在里面
---->1 testDataFrame[[“Id1”,(1,'一')]]
~/anaconda3/envs/deep learning/lib/python3.5/site-packages/pandas/core/frame.py in\uuu\u获取项目(self,key)
2680如果isinstance(键,(系列,np.ndarray,索引,列表)):
2681#布尔或奇异整数索引
->2682返回self.\u getitem\u数组(键)
2683 elif isinstance(键,数据帧):
2684返回自我。\u获取项目\u帧(键)
~/anaconda3/envs/deep learning/lib/python3.5/site-packages/pandas/core/frame.py in_getitem_数组(self,key)
2707 def_getitem_阵列(自身,密钥):
2708#如果对象数组具有NA值,也会引发异常
->2709如果com.is\u bool\u索引器(键):
2710#此处警告以防万一--之前uuuu setitem uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
2711#重新编制索引,但uu getitem uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu;这样做似乎更合理
is\u bool\u索引器(键)中的~/anaconda3/envs/deep learning/lib/python3.5/site-packages/pandas/core/common.py
113 elif isinstance(键,列表):
114尝试:
-->115 arr=np.asarray(键)
116返回arr.dtype==np.bool和len(arr)==len(key)
117除类型错误外:#pragma:无封面
asarray中的~/anaconda3/envs/deep learning/lib/python3.5/site-packages/numpy/core/numeric.py(a,数据类型,顺序)
499
500     """
-->501返回数组(a,数据类型,copy=False,order=order)
502
503
ValueError:使用序列设置数组元素

对于我来说工作很好,你的pandas版本是什么?
testDataFrame[[“Id1”,(1,'one')]
对我来说在pandas中没有问题
.25.3
谢谢你的回答,我为问题添加了更多细节