目录🍓问题与现象🍑解决方案一(next方法)🍑解决方案二(添加循环判断)🍓问题与现象当csv文件中存在标题行时,该如何忽略第一行,而直接从第二行读取呢?csv文件如下:代码如下:import csvfile = open('demo.csv', 'r')table = csv.reader(file)for row in table: print(row)运行结果如下:['ID', 'Name', 'Age']['1', 'Tom
4,Dave,15,95
假设上述
csv
文件
保存为”A.
csv
”,如何用
Python
像操作Excel一样提取其中的一行,也就是一条记录,利用
Python
自带的
csv
模块,有2种
方法
可以实现:
方法
一:reader
第一种
方法
使用reader函数,接收一个可迭代的对象(比如
csv
文件
),能返回一个生成器,就可以从其中解析出
csv
的
Windows下的分隔符默认的是逗号,而MAC的分隔符是分号。拿到一份用分号分割的
CSV
文件
,在Win下是无法正确
读取
的,因为
CSV
模块默认调用的是Excel的规则。
所以我们在
读取
文件
的
时
候需要添加分割符变量。
import
csv
import os
cwd = os.getcwd()
print (Current folder is %s % (cwd) )
csv
file = open( cwd + '\data\eclipse\change-metrics.
csv
','r')
reader = [each for each in
csv
.DictReader(
csv
file,
在用MR或Spark处理较大的
csv
文件
时
,经常会遇到这么一个问题,
csv
文件
的
第一行
往往是列名,怎么办呢?
guo@guo:~$ sed 1d dual.txt > noheader.txt
用sed 1d就可以把dual.txt
文件
的
第一行
去掉,>是指将前面的命令的结果覆盖到noheader.txt,>>就是追加了。还不懂可以看一下我写的shell基础。
由于用to_
csv
保存
时
会留下一行列索引,位置是
第一行
,使用read_
csv
读取
csv
文件
后,会将
第一行
读取
为数据,但事实上并不是,需要将它删除。使用df.drop(0)的
方法
,将
第一行
删除。
a = pd.read_
csv
(r'Filename\
csv
name.
csv
', header=None)
a = a.drop(0)
方法
一:M =
csv
read(‘FILENAME’),
读取
逗号分隔值格式的
文件
名。结果直接返回给M。因此,
文件
只能包含数值。
方法
二:M =
csv
read(‘FILENAME’,R,C),从逗号分隔值格式的
文件
中
读取
数据(从R行和C列开始)。R和C从零开始,因此R=0和C=0指定
文件
中的第一个值。即
csv
文件
中的
第一行
为该函数的第0行,
csv
文件
中的第一列为该函数的第0列。
方法
三:M =
csv
read(‘FILENAME’,R,C,RNG),只
读取
由RNG=[R1 C1 R2 C2]指...
Python
读取
CSV
文件
有多种
方法
,以下是几种常见的
方法
:
1. 使用
csv
模块:
Python
自带
csv
模块,使用该模块可以轻松
读取
CSV
文件
。可以使用
csv
.reader() 函数将
CSV
文件
转换为可迭代的行列表,然后遍历行列表进行数据处理。例如:
```
python
import
csv
with open('file.
csv
', newline='') as
csv
file:
reader =
csv
.reader(
csv
file)
for row in reader:
print(row)
2. 使用 Pandas 库:Pandas 库是用于数据分析的常用库,也可以用于
读取
CSV
文件
。可以使用 pandas.read_
csv
() 函数
读取
CSV
文件
,并将其转换为 Pandas 数据帧以方便数据处理。例如:
```
python
import pandas as pd
df = pd.read_
csv
('file.
csv
')
print(df)
3. 使用 NumPy 库:NumPy 库是
Python
中用于数值计算的常用库,也可以用于
读取
CSV
文件
。可以使用 numpy.loadtxt() 函数
读取
CSV
文件
,并将其转换为 NumPy 数组以方便数据处理。例如:
```
python
import numpy as np
arr = np.loadtxt('file.
csv
', delimiter=',', skiprows=1)
print(arr)
以上是
读取
CSV
文件
的几种常见
方法
,可以根据自己的需求选择适合的
方法
。