python读取csv数据读成array(python读取csv数据计算)

http://www.itjxue.com  2023-03-31 01:42  来源:未知  点击次数: 

怎么样Python从csv文件中读出并将第一红框中的数据保存为数组,第二红框中如果为是则为1,否则为0?

data=[]

with open("【csv文件路径】") as f:

# readline先读掉第一行

while (line := f.readline()) != "":

line = line.split(',')

data.append(line[1:2]+[1 if line[4] == "是" else 0])

说明:

:= 海象运算符 3.8语法

# 作用是一边赋值,一边让表达式的值加入运算

# 比如 (i := 25) + 1

# 会返回26,并且拥有一个名为i的变量

# 3.7-可改为以下代码

# line = f.readline()

# while line != "":

value1 if exp else value2如果exp成立的话,返回value1,否则返回value2

用python处理csv文件,最好可以将里面的文本信息转成一个二维数组的形式,具体如下

思路如下:

导入csv库;

打开文件,并用csv库函数reader读入数据;

csv读入的数据是一行一行的,所以通过循环语句把读到的数据放入到数组里

import?csv?#?必要库导入

filepath?=?'test.csv'?#?定义文件名称,本文件要与当前的.py文件要在同一文件夹下,不然要用绝对路径

with?open(filepath,'r')?as?csvfile:?#?打开数据文件

????reader?=?csv.reader(csvfile)?#?用csv的reader函数读取数据文件

????header?=?next(reader)?#?读取数据文件的表头

????data?=?[]?#?定义一个空数组用于保存文件的数据

????for?line?in?reader:?#?循环读取数据文件并保存到数组data中

????????data.append(line)?#?line是个一维数组,是数据文件中的一行数据

print(header)?#?表头

print(data)?#?读取的二维数组

如何用python将csv文件中的数据读取成数组

很多时候,我们将数据存在txt或者csv格式的文件里,最后再用python读取出来,存到数组或者列表里,再做相应计算。本文首先介绍写入txt的方法,再根据不同的需求(存为数组还是list),介绍从txt读取浮点数的方法。

一、写入浮点数到txt文件:

假设每次有两个浮点数需要写入txt文件,这里提供用with关键字打开文件的方法,使用with打开文件是一个很好的习惯,因为with结束,它就会自动close file,不用手动再去flie.close()。

[python] view plain copy

with open('file_path/filename.txt','a') as file:

write_str = '%f %f\n'%(float_data1,float_data2)

file.write(write_str)

二、从txt文件提取浮点数到numpy数组或list列表

首先假设你有一个odom.txt 的文件,里面每一行的数据个数都相同,如截图所示:

1.如果你是想把这些数据读取出来,存为numpy数组,那么一句代码可以搞定:

[python] view plain copy

a = numpy.loadtxt('odom.txt')

存为numpy数组以后,a的尺寸可以用a.shape进行查看,这里应为:(14,2)也就是14行2列。如果你觉得这个形状不是你期待的,你可以用:

[python] view plain copy

(责任编辑:IT教学网)

更多

推荐Flash actionscript文章