2024-06-07 11:24:59 发布
网友
我有一个csv文件,上面有信息,我很难把它读入数据框
原始CSV看起来像:
我希望得到三种不同的东西: 1) 在第一行定义日期和公司名称 2) 将汇总表(上表)放入数据框中 3) 将详细销售表放入另一个数据框中
我尝试了df = pd.read_cs(filepath,error_bad_lines=False),它只给出了汇总表,但只显示了3行,因为第一行只有3列。关于如何阅读这些文件有什么想法吗?汇总表的行号不是固定的(不同的行数)。任何帮助都将不胜感激!谢谢
df = pd.read_cs(filepath,error_bad_lines=False)
对于那些感兴趣的人来说,这就是我用来解决问题的方法:
from csv import reader with open('*.csv', 'r') as read_obj: csv_reader = reader(read_obj) list1 = [] list2 = [] list3 = [] for row in csv_reader: if len(row) == 3: list1.append(row) if len(row) == 4: list2.append(row) if len(row) == 7: list3.append(row) df1 = pd.DataFrame(list1) df2 = pd.DataFrame(list2) df3 = pd.DataFrame(list3)
可以使用参数nrows指定要读取的行数,也可以使用skiprows跳过^{}中的某些行:
nrows
skiprows
您可以将下面的top-table读入df:
top-table
在这里,您可以跳过第一行,其中包含一些不有用的标题,然后读取下10行,其中包含顶级表的数据
df1 = pd.read_excel('test.xls', skiprows = 1, nrows= 10, usecols = 'A:D')
然后另一个df中的second-table如下所示:
second-table
在这里,您可以跳过已经在df1中读取的行,并从文件中读取剩余的数据
df2 = pd.read_excel('test.xls', skiprows = 6)
对于那些感兴趣的人来说,这就是我用来解决问题的方法:
可以使用参数} 中的某些行:
nrows
指定要读取的行数,也可以使用skiprows
跳过^{您可以将下面的
top-table
读入df:在这里,您可以跳过第一行,其中包含一些不有用的标题,然后读取下10行,其中包含顶级表的数据
然后另一个df中的
second-table
如下所示:在这里,您可以跳过已经在df1中读取的行,并从文件中读取剩余的数据
相关问题 更多 >
编程相关推荐