首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pandas.core.series.series到dataframe

pandas.core.series.series到dataframe
EN

Stack Overflow用户
提问于 2020-07-22 10:16:37
回答 1查看 170关注 0票数 0

我有这样的代码:

代码语言:javascript
复制
df = pd.DataFrame([('bird', 'Falconiformes', 389.0),
               ('bird', 'Psittaciformes', 24.0),
               ('mammal', 'Carnivora', 80.2),
               ('mammal', 'Primates', np.nan),
               ('mammal', 'Carnivora', 58)],
              index=['falcon', 'parrot', 'lion', 'monkey', 'leopard'],
              columns=('class', 'order', 'max_speed'))

我想对sames值进行重新组合,以便:

代码语言:javascript
复制
gp = df.groupby(['class', 'order','max_speed'])["class"].size().frame()

我拿到了这个:

代码语言:javascript
复制
                                 class
class  order          max_speed       
bird   Falconiformes  389.0          1
       Psittaciformes 24.0           1
mammal Carnivora      58.0           1
                      80.2           1

我把它放在html文件中,但是显示的只是最后一列,而我想要的是前三列。有什么想法吗?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-22 11:09:11

在您的示例中尝试使用标志index=True,因为在应用groupby时,其他3列在索引中。

代码语言:javascript
复制
df = pd.DataFrame([('bird', 'Falconiformes', 389.0),
           ('bird', 'Psittaciformes', 24.0),
           ('mammal', 'Carnivora', 80.2),
           ('mammal', 'Primates', np.nan),
           ('mammal', 'Carnivora', 58)],
          index=['falcon', 'parrot', 'lion', 'monkey', 'leopard'],
          columns=('class', 'order', 'max_speed'))
代码语言:javascript
复制
> df

        class   order           max_speed
falcon  bird    Falconiformes   389.0
parrot  bird    Psittaciformes  24.0
lion    mammal  Carnivora       80.2
monkey  mammal  Primates        NaN
leopard mammal  Carnivora       58.0
代码语言:javascript
复制
gp = df.groupby(['class', 'order','max_speed'])["class"].size().to_frame()
代码语言:javascript
复制
                                             class
class            order           max_speed  
bird             Falconiformes   389.0         1
                 Psittaciformes  24.0          1
mammal           Carnivora       58.0          1
                                 80.2          1
代码语言:javascript
复制
# All columns are printed in html
gp.to_html('D:/sample.html', index=True)

# Only last column, which is not in index gets printed in HTML.
gp.to_html('D:/sample.html', index=False)

编辑

I有以下错误: SyntaxError:(unicode错误)‘独角形转义’编解码器无法解码位置2-3的字节:截断\UXXXXXXXX转义

以上错误是一个decoding错误,因为您已经从一个具有不同编码的文件中导入了excel。若要解决此问题,请使用encoding标志传递正确的编码格式。

在你的情况下

代码语言:javascript
复制
gp.to_html('C:\Users\gregd\PycharmProjects\sample.html', index=True, encoding='utf-8')
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63031944

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档