Python-Панды Выходные Ограничения Столбцов


Имея дело с пандами, я пытаюсь напечатать анализ кинематических и угловых состояний объектов. Мой код для этого выглядит следующим образом:

def displayData(tList, xList, zList, dxList, dzList, thetaList, dthetaList, Q_sList):
    states = pd.DataFrame({ 't' : tList,
                            'x' : xList,
                            'z' : zList,
                            'dx' : dxList,
                            'dz' : dzList,
                            'theta' : thetaList,
                            'dtheta' : dthetaList,
                            'Q_s' : Q_sList})

    print states[['t', 'x', 'z', 'dx', 'dz', 'theta', 'dtheta', 'Q_s']]

Однако при запросе на печать данных выходные данные разбиваются на столбцы за пределами определенной точки:

          t           x           z          dx         dz     theta  
0     0.000 -500.000000 -100.000000  100.000000  -0.000000  0.000000   
1     0.005 -499.500000 -100.000000   99.999983   0.057692 -0.000577   
2     0.010 -499.000000  -99.999712   99.999933   0.115329 -0.001153
...     ...         ...         ...         ...        ...       ... 

        dtheta       Q_s  
0    -0.115385 -0.038462  
1    -0.115274 -0.038425  
2    -0.115163 -0.038388
...        ...       ...

Поскольку у меня есть много тысяч состояний для печати в то время, я хотел бы, чтобы панды не разбивали таблицу таким образом, позволяя мне анализировать одно данное состояние без необходимости прокрутки, чтобы забрать оставшиеся два данных поля. Можно ли каким-либо образом определить конкретные размеры, которые будут распечатаны, чтобы этого не произошло?

1 4

1 ответ:

Есть две полезные настройки , которые можно использовать в этом случае: pd.options.display.width и pd.options.display.expand_frame_repr

Вот небольшая демонстрация:

In [118]: pd.options.display.expand_frame_repr
Out[118]: True

In [119]: pd.options.display.width = 50

In [120]: df
Out[120]:
       t      x           z          dx  \
0  0.000 -500.0 -100.000000  100.000000
1  0.005 -499.5 -100.000000   99.999983
2  0.010 -499.0  -99.999712   99.999933

         dz     theta    dtheta       Q_s
0 -0.000000  0.000000 -0.115385 -0.038462
1  0.057692 -0.000577 -0.115274 -0.038425
2  0.115329 -0.001153 -0.115163 -0.038388

In [121]: pd.options.display.width = 100

In [122]: df
Out[122]:
       t      x           z          dx        dz     theta    dtheta       Q_s
0  0.000 -500.0 -100.000000  100.000000 -0.000000  0.000000 -0.115385 -0.038462
1  0.005 -499.5 -100.000000   99.999983  0.057692 -0.000577 -0.115274 -0.038425
2  0.010 -499.0  -99.999712   99.999933  0.115329 -0.001153 -0.115163 -0.038388

In [131]: pd.options.display.width = 40

In [132]: df
Out[132]:
       t      x           z  \
0  0.000 -500.0 -100.000000
1  0.005 -499.5 -100.000000
2  0.010 -499.0  -99.999712

           dx        dz     theta  \
0  100.000000 -0.000000  0.000000
1   99.999983  0.057692 -0.000577
2   99.999933  0.115329 -0.001153

     dtheta       Q_s
0 -0.115385 -0.038462
1 -0.115274 -0.038425
2 -0.115163 -0.038388


In [125]: pd.options.display.expand_frame_repr = False

In [126]: df
Out[126]:
       t      x           z          dx        dz     theta    dtheta       Q_s
0  0.000 -500.0 -100.000000  100.000000 -0.000000  0.000000 -0.115385 -0.038462
1  0.005 -499.5 -100.000000   99.999983  0.057692 -0.000577 -0.115274 -0.038425
2  0.010 -499.0  -99.999712   99.999933  0.115329 -0.001153 -0.115163 -0.038388

In [127]: pd.options.display.width
Out[127]: 30

В качестве альтернативы, вы можете использовать атрибуте set_options() метод

Вот список всех вариантов diplay:

In [128]: pd.options.display.
pd.options.display.chop_threshold     pd.options.display.latex              pd.options.display.mpl_style
pd.options.display.colheader_justify  pd.options.display.line_width         pd.options.display.multi_sparse
pd.options.display.column_space       pd.options.display.max_categories     pd.options.display.notebook_repr_html
pd.options.display.date_dayfirst      pd.options.display.max_columns        pd.options.display.pprint_nest_depth
pd.options.display.date_yearfirst     pd.options.display.max_colwidth       pd.options.display.precision
pd.options.display.encoding           pd.options.display.max_info_columns   pd.options.display.show_dimensions
pd.options.display.expand_frame_repr  pd.options.display.max_info_rows      pd.options.display.unicode
pd.options.display.float_format       pd.options.display.max_rows           pd.options.display.width
pd.options.display.height             pd.options.display.max_seq_items
pd.options.display.large_repr         pd.options.display.memory_usage