首页 > 解决方案 > 为什么我没有在运行模块中获得全部输出?

问题描述

我没有得到我的整个输出以及我的屏幕中的列名。

import sqlite3
import pandas as pd
hello = sqlite3.connect(r"C:\Users\ravjo\Downloads\Chinook.sqlite")
rs = hello.execute("SELECT * FROM PlaylistTrack INNER JOIN Track on PlaylistTrack.TrackId = Track.TrackId WHERE Milliseconds < 250000")
df = pd.DataFrame(rs.fetchall())
hello.close()
print(df.head())

实际结果:

    0     1     2                 3    4   ...   6     7       8        9     10
0   1  3390  3390  One and the Same  271  ...   23  None  217732  3559040  0.99
1   1  3392  3392     Until We Fall  271  ...   23  None  230758  3766605  0.99
2   1  3393  3393     Original Fire  271  ...   23  None  218916  3577821  0.99
3   1  3394  3394       Broken City  271  ...   23  None  228366  3728955  0.99
4   1  3395  3395          Somedays  271  ...   23  None  213831  3497176  0.99

[5 rows x 11 columns]

预期结果:

   PlaylistId  TrackId  TrackId              Name  AlbumId  MediaTypeId  \
0           1     3390     3390  One and the Same      271            2   
1           1     3392     3392     Until We Fall      271            2   
2           1     3393     3393     Original Fire      271            2   
3           1     3394     3394       Broken City      271            2   
4           1     3395     3395          Somedays      271            2   

   GenreId Composer  Milliseconds    Bytes  UnitPrice  
0       23     None        217732  3559040       0.99  
1       23     None        230758  3766605       0.99  
2       23     None        218916  3577821       0.99  
3       23     None        228366  3728955       0.99  
4       23     None        213831  3497176       0.99

标签: pythonpandas

解决方案


中间的...实际上表示某些数据已从显示中省略。如果要查看整个数据,则应修改 pandas 选项。pandas.set_option()您可以通过使用方法来做到这一点。文档在这里

在您的情况下,您应该设置display.max_columnsNone以便 pandas 显示无限数量的列。您必须从数据库中读取列名,然后手动设置它。请参阅此处了解如何从数据库本身读取列名。


推荐阅读