[英]Import CSV as float in a List (Python 3.5)
我需要导入一个包含约1.000.000数字的csv文件。 它们都用小数点(,)分隔,因此:1,2,3,4,...
它们只是在文件中轻松排序:无空格,无段落。
这是我的实际代码:
import statistics
import csv
with open('test.csv', 'r') as f:
reader = csv.reader(f)
zahlenliste = list(reader)
print(zahlenliste)
# x = statistics.mean(zahlenliste)
# print(x)
我尝试了很多代码,就像在stackoverflow上介绍的那样,但是我无法执行它而没有任何错误。
与列表中的所有数字一起,我想要作为结果的算术平均值(实际上是在评论中)。 与print(zahlenliste)我想看看列表的内容实际上是什么,看起来像:
[['1', '2', '3', '4', '5']]
您会好心吗,并帮助我添加正确的函数以将数字导入为float以便在算术.mean函数中使用它吗?
zahlenliste
中的项目是字符,您需要将它们转换为数字( int
或float
)。 列表理解在这里很方便:
zahlenliste = [[int(item) for item in line] for line in reader]
现在您有了一个列表列表:内部列表包含一行的值,外部列表代表这些行。 如果需要计算每行的平均值,请使用另一种列表理解:
mittelwerte = [statistics.mean(line) for line in zahlenliste]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.