python如何读取csv文件?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!
导入CSV 进口操作系统 进口numpy np 进口随机 进口的要求 #数据文件的名称 #数据集名称 birth_weight_file=& # 39; birth_weight.csv& # 39; #下载数据并创建数据文件,如果文件不存在于当前目录 #如果当前文件夹下没有birth_weight.csv数据集则下载dat文件并生成csv文件 如果不是os.path.exists (birth_weight_file): birthdata_url=& # 39; https://github.com/nfmcclure/tensorflow_cookbook/raw/master/01_Introduction/07_Working_with_Data_Sources/birthweight_data/birthweight.dat& # 39; birth_file=requests.get (birthdata_url) birth_data=https://www.yisu.com/zixun/birth_file.text.split ('/r/n ') #分裂分割函数,以一行作为分割函数,windows中换行符号为‘/r/n’,每一行后面都有一个符“/r/n”号。 birth_header=birth_data [0] .split (/t) #每一列的标题,标在第一行,即是birth_data的第一个数据。并使用制表符作为划分。 birth_data=[[x (x)的浮动y.split (/t)如果len (x)>=1]为y birth_data[1:]如果len (y)>=1) print (np.array (birth_data) .shape) # (189 9) #此为列表数据形式不是numpy数组不能使用np,形状函数,但是我们可以使用np.array函数将列表对象转化为numpy数组后使用形状属性进行查看。 张开(birth_weight_file,“w”,换行符=")f: #张开f (birth_weight_file,“w”): 作家=csv.writer (f) writer.writerows ([birth_header]) writer.writerows (birth_data) f.close ()
<强>常见错误列表索引的范围强>
其中我们重点需要讲的是张开(birth_weight_file,“w"换行符=& # 39;& # 39;)f:这个语句。表示写入csv文件,如果不加上参数换行符=& # 39;& # 39;表示以空格作为换行符,而是用张开(birth_weight_file,“w") f:语句。则生成的表格中会出现空行。
不仅仅是用python I/O进行csv数据的读写时,利用其余方法读写csv数据,或者从网上下载好csv数据集后都需要查看其每行后有没有空格,或者有没有多余的空行,避免不必要的错误~影响数据分析时的判断。
<强>使用PythonI/O读取csv文件强>
使用python I/O方法进行读取时即是新建一个表列表然后按照先行后列的顺序(类似C语言中的二维数组)将数据存进空的列表对象中,如果需要将其转化为numpy数组也可以使用np。数组(清单名称)进行对象之间的转化。
birth_data=https://www.yisu.com/zixun/[] csvfile张开(birth_weight_file): csv_reader=csv.reader (csvfile) #使用csv.reader读取csvfile中的文件 birth_header=next (csv_reader) #读取第一行每一列的标题 在csv_reader行:#将csv文件中的数据保存到birth_data中 birth_data.append(行) birth_data=[[浮动(x)对x行)的行birth_data] #将数据从字符串形式转换为浮动形式 birth_data=np.array (birth_data) #将列表数组转化成数组数组便于查看数据结构 birth_header=np.array (birth_header) 打印(birth_data.shape) #利用.shape查看结构。 打印(birth_header.shape) # # (189 9) #(9日)python如何读取csv文件