Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/326.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
Python 熊猫错误“***ValueError:长度不匹配:预期轴有0个元素,新值有…“;_Python_Pandas - Fatal编程技术网

Python 熊猫错误“***ValueError:长度不匹配:预期轴有0个元素,新值有…“;

Python 熊猫错误“***ValueError:长度不匹配:预期轴有0个元素,新值有…“;,python,pandas,Python,Pandas,访问数据帧df中的数据时出错: 1988和“出席”都在df中: 我不知道这个错误是怎么回事。有什么想法吗 提前谢谢 例如: ipdb> df.iloc[21875:21880, 277:280] FUND ATTEND MAATTEND 1988 3 1 4 1988 2 3 0 1988 2 2 2 1988 2 2 7 1988

访问数据帧df中的数据时出错:

1988和“出席”都在df中:

我不知道这个错误是怎么回事。有什么想法吗

提前谢谢

例如:

ipdb> df.iloc[21875:21880, 277:280]
      FUND  ATTEND  MAATTEND
1988     3       1         4
1988     2       3         0
1988     2       2         2
1988     2       2         7
1988     2       3         2

ipdb> df.loc[1988, 'ATTEND']
*** ValueError: Length mismatch: Expected axis has 0 elements, new values have 1481 elements


GSSFilename = 'GSS Dataset/GSS7212_R2_copy.sav'
data = srw.SavReader(pathToData + GSSFilename)
df = pd.DataFrame(data.all(), index=data[:,0],    columns=ALL_VARIABLE_NAMES)
with data: 
    data = np.array(data.all()) 
更新
我认为这个问题是由两个不同的Python实例访问相同的.sav文件引起的。

我认为这个问题是由两个不同的Python实例访问相同的.sav文件引起的。

在我的例子中,我用来填充数据框的查询返回0行,因为数据库表是空的。填充表后,错误就消失了。

什么版本的pandas/numpy?请发布frame和df.dtypes的示例,df.info()你能找到索引和列的位置并提取一个小的子帧吗?使用iloc也会失败?@Jeff,所有数据类型都是float64。Numpy是1.7.1,熊猫是0.13。1@AndyHayden,例如:ipdb>df.iloc[21875:21880277:280]基金出席MAATTEND 1988 3 1 4 1988 2 3 0 1988 2 2 2 1988 2 7 1988 2 2 ipdb>df.loc[1988,“出席”]***ValueError:长度不匹配:预期轴有0个元素,新值有1481个元素elements@Jeff,刚刚将Numpy更新为1.8.1,但仍然存在相同的问题。
ipdb> 1988 in df.index
True
ipdb> 'ATTEND' in df.columns
True
ipdb> df.iloc[21875:21880, 277:280]
      FUND  ATTEND  MAATTEND
1988     3       1         4
1988     2       3         0
1988     2       2         2
1988     2       2         7
1988     2       3         2

ipdb> df.loc[1988, 'ATTEND']
*** ValueError: Length mismatch: Expected axis has 0 elements, new values have 1481 elements


GSSFilename = 'GSS Dataset/GSS7212_R2_copy.sav'
data = srw.SavReader(pathToData + GSSFilename)
df = pd.DataFrame(data.all(), index=data[:,0],    columns=ALL_VARIABLE_NAMES)
with data: 
    data = np.array(data.all())