Python只在一列中读取csv

Python只在一列中读取csv,python,pandas,csv,Python,Pandas,Csv,因此,我是python的新手(使用Python3和spyder IDE),我尝试在csv文件中读取一些天气数据。 问题是我的文件包含一些空单元格和我不需要的信息。我只需要从第18行开始作为标题(数据的所有物理描述,例如温度、压力等存储在此行中)和所有列。在python中尝试以下操作时: import pandas as pd import numpy as np df = pd.read_csv(r'C:\Users\troes\OneDrive\Dokumente\studium\8 Se

因此,我是python的新手(使用Python3和spyder IDE),我尝试在csv文件中读取一些天气数据。 问题是我的文件包含一些空单元格和我不需要的信息。我只需要从第18行开始作为标题(数据的所有物理描述,例如温度、压力等存储在此行中)和所有列。在python中尝试以下操作时:

import pandas as pd

import numpy as np

df = pd.read_csv(r'C:\Users\troes\OneDrive\Dokumente\studium\8 Semester\BAT\code_transfer\VNYA16.201812160000.csv')

df = df[16:91]
Python将所有数据存储在一列中,如下所示

但是我想要的输出是一个数据帧,它在第一列中包含日期时间、第二个前置时间、第三个T时间等等

有人知道如何正确地解决这个问题吗?

在pandas中,默认分隔符是逗号(这并不奇怪,因为csv代表“逗号分隔值”)。你的是分号。要更改它,您需要修改您的命令,使其包含如下内容:
pd.read_csv(sep=';')
。如果这还不够,那么完整的行应该是:

df = pd.read_csv(r'C:\Users\troes\OneDrive\Dokumente\studium\8 Semester\BAT\code_transfer\VNYA16.201812160000.csv', sep=';')

这里有一个例子,以防你想知道更多。

这可能会帮助你朝着正确的方向前进:

pd.read\u csv()
可以接受一些额外的参数。请参见此处的熊猫文档:

首先,由于在标题之前有额外的行,因此添加header参数来指定行。e、 g

pd.read\u csv(路径到文件,头=17)
read_csv()
中的默认分隔符是“”,而您的分隔符看起来是“;”。因此,我还要添加分隔符参数。e、 g:

pd.read_csv(路径到文件,头=17,sep=';'))

希望这能让你找到更合理的方法。

使用
pd.read\u csv
skip\u rows
功能

df = (pd.read_csv(r'C:\Users\troes\OneDrive\Dokumente\studium\8 Semester\BAT\code_transfer\VNYA16.201812160000.csv', 
                  sep=';', 
                  skip_rows=18))

你的文件里有逗号吗?它们在我看来像分号。Write
sep=“;”
csv代表逗号分隔的值。
read\u csv
有一个
sep
参数。它还有
skiprows
。C错误:第4行应为3个字段,见第5行,问题是我认为第18行开始处的2个空单元格您是否尝试使用
skiprows
header
?感谢您的帮助,但与我的文件中的行完全相同。我已经尝试过sep=(“;”),这给了我来自python的以下错误:错误标记化数据。C错误:第4行应该有3个字段,请再次尝试复制我输入的内容。我这么说是因为在你上面的评论和你对问题的评论中,你说你输入了“sep=(';')”,这不是建议的内容。非常感谢。这正是我想要的结果,没问题。如果可以,请将答案标记为已接受,以供将来查找此答案并祝您愉快地进行pythoning。