1.当我们在学习机器学习模型时,会使用pandas导入csv、xlsx、txt等数据类型的数据集。
通过设置 pandas.read_csv 中的参数,可以实现数据行的分割:
例如:如下的数据,若不设置参数,导入后每一行的的数据会是:1\t0.455\t0.365\t0.095\t0.514\t0.2245\t0.101,那么如何以'\t'为分隔符切分为多列数据呢?
import pandas as pd
data = pd.read_csv('horseColic.txt', sep='\t', header=None)
## 或者
data = pd.read_csv('horseColic.txt', delimiter='\t',header = None)
效果:
2. delimiter='\t' 与 sep='\t' 的区别:
delimiter和 sep都用于指定分隔符,delimiter主要与处理文件时的文本解析有关,而 sep 主要与数据导入和分割字符串时有关。
import csv
# 以逗号分隔的数据
with open('data.csv', 'r') as file:
reader = csv.reader(file, delimiter=',')
# 以制表符分隔的数据
with open('data.tsv', 'r') as file:
reader = csv.reader(file, delimiter='\t')
import pandas as pd
# 以逗号分隔的数据导入到DataFrame
df = pd.read_csv('data.csv', sep=',')
# 以制表符分隔的数据导入到DataFrame
df = pd.read_csv('data.tsv', sep='\t')