我在尝试将其读入pandas数据框的文本文件中具有以下格式的文件。
895|2015-4-23|19|10000|LA|0.4677978806|0.4773469340|0.4089938425|0.8224291972|0.8652525793|0.6829942860|0.5139162227|
如您所见,输入文件中的浮点后面有 10个 整数。
df = pd.read_csv('mockup.txt',header=None,delimiter='|')
当我尝试将其读入数据帧时,我没有得到最后的4个整数
df[5].head()
0 0.467798
1 0.258165
2 0.860384
3 0.803388
4 0.249820
Name: 5, dtype: float64
如何获得输入文件中显示的完整精度?我有一些矩阵操作需要执行,所以我不能将其转换为字符串。
我发现我必须做一些事情,dtype
但是我不确定应该在哪里使用它。
这只是显示问题,请参阅docs:
#temporaly set display precision
with pd.option_context('display.precision', 10):
print df
0 1 2 3 4 5 6 7 \
0 895 2015-4-23 19 10000 LA 0.4677978806 0.477346934 0.4089938425
8 9 10 11 12
0 0.8224291972 0.8652525793 0.682994286 0.5139162227 NaN
Pandas使用专用的十进制到二进制转换器,该转换器为了提高速度而牺牲了完美的精度。传递
float_precision='round_trip'
给read_csv可以解决此问题。有关更多信息,请参见文档。
我试图在pandas中使用从FTP服务器读取压缩文件。zip文件只包含一个文件,这是必需的。 这是我的密码: 我得到这个错误: 我在pandas 18.1和19.0中都遇到了这个错误。我是否遗漏了什么,或者这可能是一个错误?
我正在读取一个包含多个datetime列的csv文件。我需要在读取文件时设置数据类型,但datetimes似乎是个问题。例如: 运行时出现错误: 不理解数据类型"datetime" 通过pandas在事实之后转换列。to_datetime()不是一个选项,我不知道哪些列将成为datetime对象。这些信息可以更改,并且来自于通知我的数据类型列表的任何信息。 或者,我尝试用numpy.genfrom
问题内容: 我将Python 3.4与IPython结合使用,并具有以下代码。我无法从给定的URL读取csv文件: 我有以下错误 “预期的文件路径名或类似文件的对象,得到了类型” 我怎样才能解决这个问题? 问题答案: 更新资料 现在,您可以从熊猫直接传递URL。 正如错误所暗示的,需要一个类似文件的对象作为第一个参数。 如果要从字符串读取csv,可以使用(Python 3.x)或(Python 2
问题内容: 似乎pandas read_csv 函数仅允许使用单个字符定界符/分隔符。有没有办法允许使用字符串“ * | *”或“ %%”代替? 问题答案: 解决方案是使用read_table而不是read_csv: 因此,我们可以阅读以下内容:
问题内容: 打电话时 我得到: /Users/josh/anaconda/envs/py27/lib/python2.7/site- packages/pandas/io/parsers.py:1130:DtypeWarning:列(4,5,7,16)具有混合类型。在导入时指定dtype选项,或将low_memory = False设置为false。 为什么选项与关联,为什么使它有助于解决此问题?
如何使用pandas筛选要加载到内存中的CSV行?这似乎是一个应该在中找到的选项。我错过什么了吗? 示例:我们有一个带有时间戳列的CSV,我们只想加载时间戳大于给定常量的行。