【发布时间】:2017-12-08 20:12:31
【问题描述】:
有没有办法在浮点数数组中包含字符串而不改变数组的格式,这样所有浮点数都更改为字符串但字符串元素仍保留为字符串?
例如。
import numpy as np
a = np.array([ 'hi' , 1. , 2. , 3. ])
理想情况下,我希望格式保持与上面输入为“a”时的外观相同。
这给出了:
array(['hi', '1.0', '2.0', '3.0'], dtype='|S3')
那么如何将这样的数组保存为文本文件呢?
非常感谢,
J
【问题讨论】:
-
在标签中提到python(因为我假设你使用的是这个)
-
哎呀,我们走了,很抱歉-是的,我正在使用 Python
-
python 中的列表难道不是异构的吗?我不明白您面临的问题...
-
问题是当我创建这个数组并尝试将其保存为文本文件时,由于数组 dtype 之间的不匹配,它不会这样做,所以基本上我在问如何克服这个问题并保存一个包含字符串和浮点数的数组,以便我可以读回文本文件并稍后在提取字符串和浮点数时使用。
-
虽然指定
dtype=object可能会解决您的一些问题,但这不是 NumPy 的设计工作方式,使用对象数组会导致奇怪的不兼容性并破坏 NumPy 数组相对于普通列表的大部分优势.
标签: python arrays string types format