IndexError:单个位置索引器使用pandas Series.from_csv是超出范围的
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IndexError:单个位置索引器使用pandas Series.from_csv是超出范围的相关的知识,希望对你有一定的参考价值。
我收到错误了
File "C:/Users/Toshiba/PycharmProjects/untitled1/stationarity.py", line 7, in <module>
series = Series.from_csv('flowcaida.csv')
File "C:\ProgramData\Anaconda2\lib\site-packages\pandas\core\series.py", line 2640, in from_csv
result = df.iloc[:, 0]
File "C:\ProgramData\Anaconda2\lib\site-packages\pandas\core\indexing.py", line 1325, in __getitem__
return self._getitem_tuple(key)
File "C:\ProgramData\Anaconda2\lib\site-packages\pandas\core\indexing.py", line 1662, in _getitem_tuple
self._has_valid_tuple(tup)
File "C:\ProgramData\Anaconda2\lib\site-packages\pandas\core\indexing.py", line 189, in _has_valid_tuple
if not self._has_valid_type(k, i):
File "C:\ProgramData\Anaconda2\lib\site-packages\pandas\core\indexing.py", line 1597, in _has_valid_type
return self._is_valid_integer(key, axis)
File "C:\ProgramData\Anaconda2\lib\site-packages\pandas\core\indexing.py", line 1638, in _is_valid_integer
raise IndexError("single positional indexer is out-of-bounds")
IndexError: single positional indexer is out-of-bounds
使用这个:
series = Series.from_csv('flowcaida.csv')
这是我的数据:
651680
459151
596299
474950
631421
465275
629861
455582
650192
谢谢您的帮助。
答案
Series.from_csv
已经被弃用了很长一段时间了。你应该使用read_csv
代替。
由于您有一个列CSV,您可以传递squeeze=True
以便返回Series
。
s = pd.read_csv(buf, header=None, names=["Data"], squeeze=True)
s
0 651680
1 459151
2 596299
3 474950
4 631421
5 465275
6 629861
7 455582
8 650192
Name: Data, dtype: int64
type(s)
pandas.core.series.Series
以上是关于IndexError:单个位置索引器使用pandas Series.from_csv是超出范围的的主要内容,如果未能解决你的问题,请参考以下文章
“IndexError:位置索引器超出范围”,当它们明显不是时
Pandas 中的 grouby() 函数返回 IndexError:索引 2 超出轴 0 的范围,大小为 2
pandas读取csv数据index_col参数指定作为行索引的数据列索引列表形成复合(多层)行索引使用iloc基于行索引位置筛选dataframe的指定单个数据行
pandas读取csv数据index_col参数指定作为行索引的数据列索引列表形成复合(多层)行索引使用iloc基于行索引位置筛选dataframe的指定单个数据行