【问题标题】:Can someone help me to understand why my csv is being read as a html doctype?有人可以帮助我理解为什么我的 csv 被读取为 html doctype 吗?
【发布时间】:2018-05-29 02:57:06
【问题描述】:

我正在尝试使用 Panadas 将 csv 文件读入 Jupyter 笔记本。当我读取文件并索引列时,我收到一条消息,内容为

索引([''], dtype='object')

我不确定为什么我的文件被读取为 html 文档类型,而我无法读取其当前格式的任何列。将文件转换为 excel 时也会出现错误。任何人都可以为我指出问题所在的正确方向吗?谢谢。

import numpy as np
import pandas as pd

inspection = pd.read_csv("http://localhost:8889/view/Desktop/python/Data/Inspections_MergedFile.csv", sep='\t')

inspection.columns

csv 数据取自纽约市关于餐厅检查的开放数据文件:https://data.cityofnewyork.us/Health/DOHMH-New-York-City-Restaurant-Inspection-Results/xx67-kt59,与 311 的食物中毒数据https://data.cityofnewyork.us/Social-Services/food-poisoning/gjkf-etq5 相结合。

【问题讨论】:

  • 你能从你的 csv 中粘贴一个样本吗?
  • 我在该网页上看到一个“导出”按钮,如果您单击该按钮,您将看到一个“CSV”按钮。我猜那不是你所做的......

标签: python pandas csv jupyter-notebook


【解决方案1】:

如果您尝试通过一些 Web api 路由在本地提供文件,那么您必须提供有关您的应用程序以及您所布局的结构的更多信息。

当我尝试关闭您提供的链接并复制其 csv 格式导出选项的链接时,我下载了数据(最终在几分钟后),尽管有警告...

>>> df = pandas.read_csv( 'https://data.cityofnewyork.us/api/views/xx67-kt59/rows.csv' )
sys:1: DtypeWarning: Columns (6) have mixed types. Specify dtype option on import or set low_memory=False.
>>> df
           CAMIS                               DBA           BORO BUILDING  \
0       41471806                     THE HEN HOUSE       BROOKLYN     7302
1       50060020                  CURRY EXPRESS NY      MANHATTAN      130
2       50060627            RED HOUSE ASIAN FUSION         QUEENS    19203
3       50040866                        FUEL GRILL      MANHATTAN      112
4       41710571                     BLACKTHORN 51         QUEENS     8012
5       50015486                       THE IZAKAYA      MANHATTAN      326
6       50015250              PETITE BLUE DOG CAFE      MANHATTAN      119
7       40388091                            MASAWA      MANHATTAN     1239
8       41456998                     A.I.G.CHARTIS      MANHATTAN      175
9       50006741                        GRACE CAFE      MANHATTAN      572
10      41377069              CATALDO'S RESTAURANT       BROOKLYN      554
11      41145911                   WA LUNG KITCHEN      MANHATTAN      557
12      41547536               MINT'S THAI KITCHEN         QUEENS     7015
13      41066771                    DUNKIN' DONUTS       BROOKLYN     5702
14      40365472            SPAIN RESTAURANT & BAR      MANHATTAN      113
15      50072117                               NaN      MANHATTAN      307
16      50042671                      EDGAR'S CAFE      MANHATTAN      650
17      41490991                   LIPS RESTAURANT      MANHATTAN      227
18      41713624  BIENVENIDOS AL CALLAO RESTAURANT         QUEENS    11122
19      40923012                          DOMINO'S      MANHATTAN      200
20      41477406                  CIBAO RESTAURANT         QUEENS    10422
21      50013522             BREWKLYN GRIND COFFEE       BROOKLYN      557
22      41212364                         BECKETT'S      MANHATTAN       81
23      50066646                    TOKOYO EXPRESS         QUEENS     7057
24      41575815                   BLACKOUT LOUNGE         QUEENS    13316
...

【讨论】:

  • 感谢您的帮助。我没有通过 api 使用该文件。我已将 csv 文件本地保存到我的计算机上,我正在尝试将该文件夹中的文件读入 juypter notebook。
  • 你可以直接给出文件的路径,例如df = pd.read_csv("C:\Temp\Myfolder\myData.csv"), or df = pd.read_csv("./RelativeFolder/myData.csv")
  • 太好了,很高兴知道发生了什么,当你给它一个 http 字符串时,熊猫交换模式开始使用 urllib 和其他东西下载文件以完成工作。但如果文件是本地文件,则无需这样做。
猜你喜欢
  • 1970-01-01
  • 2014-11-29
  • 2021-09-04
  • 1970-01-01
  • 1970-01-01
  • 2020-11-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多