使用python读取csv文件,直接打印是字符
data_test = pd.read_csv('C:/Users/29291/Desktop/新建文件夹/815-18-15-15.csv', header=None)
x_test =data_test.loc[262:1189, 0:0].values
print(x_test )
打印结果如下:
[['450.538']
['450.945']
['451.352']
['451.758']]
想要去掉单引号,转化为浮点型,使用
x_test= map(float, x_test) x_test= list(x_test)
或者
x_test=[float(f) for f in x_test]
替换,结果单引号是去掉了,却变成了横着的列表,我需要原来竖着的列表,该怎么修改啊?
[450.538, 450.945, 451.352, 451.758]
我希望变成这样,请老师给出详细的代码修改,不要只给一个方向,谢谢
[[450.538]
[450.945]
[451.352]
[451.758]]
我大概知道问题了,你原来再excel读过来的数据,最终转换成了一个numpy的数组。而我们现在的结果还是一个列表。
你可以尝试在现在的基础上添加以下内容:
import numpy as np
x_test = np.array(x_test)
如果还没成功可以继续交流。
你现在的结果,实际上将列表降低了一个维度。
对于现在的结果,x_test[0]=450.538,
对于你想要的结果,实际为列表套列表。x_test[0]=[450.538],x_test[0][0]=450.538
如果你想实现列的方式,即为列表套列表。
可以在目前的代码后面增加一下代码:
for i in range(len(x_test)):
x_test[i] = [x_test[i]]
你可以尝试一下,如果有问题可继续讨论。
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps: 问答会员年卡【8折】购 ,限时加赠IT实体书,即可 享受50次 有问必答服务,了解详情>>>https://t.csdnimg.cn/RW5m