【问题标题】:concatante list of lists dataframe from pd.read_html DF[0] format从 pd.read_html DF[0] 格式连接列表数据框列表
【发布时间】:2019-05-20 09:50:23
【问题描述】:

我有一个 DF[number] = pd.read_html(url.text)

我想加入或加入 DF 列表,其中有数百个,例如DFs[400] 到单个 pandas 数据帧中

数据框是列表格式,所以列表是列表,但 python 索引列表,如 pandas 数据框

     [    Vessel                Built    GT    DWT  Size (m)     Unnamed: 5
 0      x            XIN HUA Bulk Carrier  2012  44543     82269   229 x 32
 1      b  FRANCESCO CORRADO Bulk Carrier  2008  40154     77061   225 x 32
 2      5         NAN XIN 17 Bulk Carrier  2001  40570     75220   225 x 32
 3      p      DIAMOND INDAH Bulk Carrier  2002  43321     77830   229 x 37
 4      NaN         PRIME LILY Bulk Carrier  2012  44485   81507   229 x 32
 5      s           EVGENIA Bulk Carrier  2011  92183    176000   292 x 45



 df[number] = pd.read_html(url.text) 

 for number in range(494):
 df=pd.concat(df[number])

方法,但似乎不起作用

  df1=pd.concat(df[1])
  df2=pd.concat(df[2])
  df3=pd.concat(df[3])
  dfx=pd.concat([df1,df2,df3],ignore_index=True)

这不是我想要的,因为有数百个 [] python 列表数据帧

我想要一个将所有列表数据帧合并为一个的 pandas 数据帧

请明确列表的 df[] 容器是 dict 类型,而 df[1] 是列表

【问题讨论】:

    标签: python pandas list concat scrape


    【解决方案1】:

    您可以使用列表推导:

    pd.concat([dfs[i] for i in range(len(dfs))])
    

    【讨论】:

    • typeError: 无法连接类型为“”的对象;只有 pd.Series、pd.DataFrame 和 pd.Panel(已弃用)obj 有效
    • 听起来你有一个列表列表而不是数据框列表
    • 是的,它是一个列表列表,但由于该列表是一个 python 索引列表,类似于列表的数据框列表,因此无法连接它们
    猜你喜欢
    • 2017-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-03
    • 2014-10-08
    • 1970-01-01
    • 2016-05-23
    • 1970-01-01
    相关资源
    最近更新 更多