gpt4 book ai didi

python - 执行 csv 读取时,pandas 数据帧 header 被转移

转载 作者:太空狗 更新时间:2023-10-29 22:29:43 25 4
gpt4 key购买 nike

我正在尝试将数据从 csv 文件读取到 pandas 数据框中,但在读取到数据框中时标题在两列之间移动。

我认为这与标题后有两个空白行有关,但我不确定。它似乎在前两列中读取为行标题/索引。

CSV 格式:

VendorID,lpep_pickup_datetime,Lpep_dropoff_datetime,Store_and_fwd_flag,RateCodeID,Pickup_longitude,Pickup_latitude,Dropoff_longitude,Dropoff_latitude,Passenger_count,Trip_distance,Fare_amount,Extra,MTA_tax,Tip_amount,Tolls_amount,Ehail_fee,Total_amount,Payment_type,Trip_type 


2,2014-04-01 00:00:00,2014-04-01 14:24:20,N,1,0,0,0,0,1,7.45,23,0,0.5,0,0,,23.5,2,1,,
2,2014-04-01 00:00:00,2014-04-01 17:21:33,N,1,0,0,-73.987663269042969,40.780872344970703,1,8.95,31,1,0.5,0,0,,32.5,2,1,,

数据帧格式:

                                   VendorID lpep_pickup_datetime  \
2 2014-04-01 00:00:00 2014-04-01 14:24:20 N
2014-04-01 00:00:00 2014-04-01 17:21:33 N
2014-04-01 00:00:00 2014-04-01 15:06:18 N
2014-04-01 00:00:00 2014-04-01 08:09:27 N
2014-04-01 00:00:00 2014-04-01 16:15:13 N

Lpep_dropoff_datetime Store_and_fwd_flag RateCodeID \
2 2014-04-01 00:00:00 1 0 0
2014-04-01 00:00:00 1 0 0
2014-04-01 00:00:00 1 0 0
2014-04-01 00:00:00 1 0 0
2014-04-01 00:00:00 1 0 0

代码如下:

file ='green_tripdata_2014-04.csv'
df4 = pd.read_csv(file)
print(df4.head(5))

我只需要它来读入标题位于正确位置的数据框。

最佳答案

您的 csv 数据看起来确实很奇怪 - 您有 20 个列标题,但第一行有 22 个条目和数据。

假设这只是复制粘贴错误*,您可以尝试以下操作:

df = pd.read_csv(file, skiprows=[1,2], index_col=False)

skiprows 将跳过两个空行,index_col 可能会减轻数据被解释为索引列的影响。

参见 http://pandas.pydata.org/pandas-docs/version/0.16.2/generated/pandas.read_csv.html对于 csv 解析器的所有选项。

编辑:

*:如果您的数据看起来与您发布的完全一样,那么您的 csv 格式不正确。您还有两个数据列(请参阅最后两个逗号 ,,)。

当您删除两个逗号时,解析器工作正常。

另一种选择是指定要使用的列:

pd.read_csv("file.csv", skiprows=[1,2], usecols=np.arange(20))

这里,np.arange(20) 告诉解析器只解析第 1-20 列,即具有有效标题的列(在您的第一行中)。

关于python - 执行 csv 读取时,pandas 数据帧 header 被转移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33763963/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com