很简单的问题。我正在阅读以特定方式组织的CSV文件。没有标题,文件形状是一个矩形;不存在丢失或损坏的条目。我使用pandas读取csv文件并转换为numpy数组。
问题是,当我打印第一列时,最后一个条目丢失了。打印输出在倒数第二个值处结束。
import pandas as pd
import numpy as np
filenames=glob.glob(r'\my\filepath\*csv')
def data(filename):
out = pd.read_csv(r'{}'.format(filenames[0]),sep=',',header=None).to_numpy()
return out
alldata = data(filenames[0])
column1 = alldata[0:-1,0]
print(column1)
我期望print命令打印整个列,但打印在倒数第二个值处结束。我在excel中打开了csv文件,打印命令显然缺少了最后一个值。但是如果我这么做了
print(alldata)
我可以在打印的表中看到column 1的预期最后一个值。发生什么事了?0:-1应该跨越整个列,对吗?
1条答案
按热度按时间jchrr9hc1#
Mate,问题是由切片引起的,alldata[0:-1,0]从包含的第一行选择,直到最后一行(不包含)。试试这个: