Pandas数据帧中无法查看所有列的解决方法
在本文中,我们将介绍Pandas数据帧中无法查看所有列的原因以及解决方法。当您在使用Pandas时,有时可能会遇到该问题,即数据帧中的列数太多而无法全部显示。这可能会对您的数据分析和可视化工作带来一定的麻烦。接下来,我们将详细了解这个问题以及如何解决它。
阅读更多:Pandas 教程
问题描述
当Pandas数据帧中的列数超过预设值时,数据帧将自动切换到“折叠/截断模式”,其中只显示一部分列,其余列由省略号代替。这使得在查看和分析数据时变得更加困难。
例如,我们有以下数据:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randn(10, 40), columns=['Column {}'.format(i) for i in range(40)])
print(df.head())
Python
上面的代码将生成一个有40个列的数据帧。如果使用Pandas默认设置查看这个数据,我们将发现一些列被折叠起来了,如下所示:
Column 0 Column 1 Column 2 ... Column 37 Column 38 Column 39
0 -1.654308 -0.014051 -1.008171 ... -1.328918 0.694475 -0.849892
1 -0.490295 0.170289 0.064062 ... -0.167743 -0.013541 -1.523275
2 -0.665825 0.603464 -0.416361 ... 1.355121 -1.091166 0.007681
3 -0.638045 -1.295168 -0.131321 ... -2.179394 -0.142523 0.960392
4 0.331303 -1.311106 2.095459 ... -1.221358 0.715913 -1.037114
[5 rows x 40 columns]
Python
我们可以看到显示了前5行和最后3列的数据,但中间的列没有全部显示出来。
解决方法
在Pandas中,有许多方法可以解决这个问题。以下是一些常用的方法:
方法1:使用set_option()
Pandas提供了一个用于查看和更改配置选项的工具set_option(),其中包括可以更改列的显示数量。我们可以使用以下方法在数据帧中查看所有行和所有列:
pd.set_option('display.max_rows', None)
pd.set_option('display.max_columns', None)
print(df)
Python
这将打印出所有的行和所有的列,如下所示:
Column 0 Column 1 Column 2 Column 3 Column 4 Column 5 Column 6 \
0 -1.654308 -0.014051 -1.008171 -0.057117 0.273829 -0.585681 0.211324
1 -0.490295 0.170289 0.064062 0.736995 -0.945112 -0.902487 -1.542132
2 -0.665825 0.603464 -0.416361 -1.920336 -1.480163 -0.695743 0.732432
3 -0.638045 -1.295168 -0.131321 -0.005508 0.213744 0.822494 0.289115
4 0.331303 -1.311106 2.095459 -1.352939 -0.127017 0.758212 -0.107769
5 1.130988 0.432771 -1.446764 0.002622 -0.047251 0.433192 -0.543859
6 0.368661 -1.098467 -0.220317 3.078073 -1.322559 0.146890 -1.369260 1.630766
7 -0.771211 -1.158011 -2.402386 1.118157 0.164019 -2.527452 -1.914109
8 -0.849151 0.545882 -0.350313 -1.899144 -0.339687 -0.579296 1.262155
9 0.347056 1.266529 -0.174252 0.127580 -0.094657 -1.048684 -0.407316
Column 7 Column 8 Column 9 ... Column 30 Column 31 Column 32 \
0 0.557294 0.800198 -0.884097 ... 0.259418 0.122359 -0.137711
1 -1.612358 -0.972921 -0.066479 ... 1.476862 0.138027 1.098782
2 -0.246017 -0.072339 1.602097 ... 0.070444 0.821055 1.503763
3 -1.955625 1.318369 -1.304495 ... 0.126964 -0.149506 -1.195699
4 -0.160321 0.694142 -0.669145 ... 0.438607 -0.648333 -2.275639
5 1.004547 1.029467 -0.597915 ... -0.450097 0.046645 -0.070509
6 -0.671825 0.183376 -0.837729 ... 0.063636 0.058390 -0.071968
7 -1.157119 0.817278 2.024819 ... 0.420665 0.310123 0.567202
8 -0.357848 -0.126819 -0.187073 ... -0.478308 -0.582978 -0.128192
9 1.742047 1.383315 -0.046585 ... -0.426239 0.135492 0.574441
Column 33 Column 34 Column 35 Column 36 Column 37 Column 38 \
0 -1.164092 0.896792 -0.501166 0.663114 -1.328918 0.694475
1 0.448783 1.328234 -0.277238 0.565621 -0.167743 -0.013541
2 -0.611316 -1.465391 -0.222123 -1.292399 1.355121 -1.091166
3 -1.518217 -0.526185 -0.447451 0.907300 -2.179394 -0.142523
4 -0.357172 -1.451178 0.302970 -0.465291 -1.221358 0.715913
5 -0.079301 0.365266 -0.746011 -0.129582 1.070566 0.917778
6 -0.675006 1.140114 -0.071840 0.003253 -0.555388 -1.862995
7 -0.272866 0.494932 0.007856 1.453076 0.065865 -0.647353
8 0.541131 1.291622 1.157670 -0.310842 -0.339689 -1.625548
9 0.295557 0.024156 -0.463846 -1.137246 -0.168949 -1.829156
Column 39
0 -0.849892
1 -1.523275
2 0.007680
3 0.960392
4 -1.037114
5 -0.861972
6 -0.287439
7 -0.354457
8 0.947603
9 -1.437942
[10 rows x 40 columns]
Python
方法2:使用transpose()方法
我们可以使用transpose()方法将数据帧中的行和列进行转置。这将使我们可以查看所有的列。示例如下:
df.T
Python
这将打印出所有的行和所有的列,如下所示:
0 1 2 3 4 5 6 \
Column 0 -1.65431 -0.490295 -0.665825 -0.638045 0.331303 1.13099 0.368661
Column 1 -0.0140506 0.170289 0.603464 -1.29517 -1.31111 0.432771 -1.09847
Column 2 -1.00817 0.0640624 -0.416361 -0.131321 2.09546 -1.44676 -0.220317
Column 3 -0.057117 0.736995 -1.92034 -0.005508 -0.435685 0.0026224 3.07807
Column 4 0.273829 -0.945112 -1.48016 0.213744 -0.127017 -0.047251 -0.564389
Column 5 -0.585681 -0.902487 -0.695743 0.822494 0.758212 0.433192 -0.856731
Column 6 0.211324 -1.54213 0.732432 0.289115 -0.107769 -0.543859 1.99626
Column 7 0.557294 -0.161236 -0.246017 -1.95563 -0.160321 1.00455 -0.671825
Column 8 0.800198 -0.0972921 -0.072338 -0.075015 0.694142 1.0295 0.183376
Column 9 -0.884097 -0.0664785 1.6021 -1.30449 -0.669145 -0.597915 -0.837729
Column 10 -0.206503 0.192147 -0.995034 -0.74011 -0.328724 -0.559549 1.66084
Column 11 -0.0947679 -0.47871 -0.512448 0.699416 1.53528 -1.68463 -0.12695
Column 12 -0.0684757 0.699096 1.18008 -1.2014 1.19277 1.03391 0.662469
Column 13 -1.6611 -0.864065 0.244469 -0.267828 1.29023 -0.121757 -2.42549
Column 14 -0.618095 0.501924 -1.70431 -0.388524 0.0592121 1.44336 -0.266401
Column 15 -0.398583 1.82137 -0.352456 1.40074 -0.248813 -0.284395 -0.875067
Column 16 -1.52281 -0.80386 -0.711886 0.131575 -0.28203 0.66108 -0.981371
Column 17 -0.808918 -1.00007 -0.662822 0.727294 1.37371 0.112246 -1.03981
Column 18 -0.0985011 -0.806919 -1.29822 0.329606 0.669515 1.32667 -0.63107
Column 19 0.632638 -1.24393 -0.709009 -0.555885 0.965719 -0.860882 -0.364205
Column 22 0.233205 -0.973108 0.170038 0.926932 0.308122 0.314776 2.84822
Column 23 0.601521 -0.0888716 0.221542 0.455238 -0.219262 -0.482111 -1.25228
Column 24 0.494579 1.92861 -0.267343 -0.728822 -0.141191 0.832078 -0.810655
Column 25 -0.831422 -0.703344 1.67024 -0.262943 -0.374461 -1.10963 -1.64576
Column 26 0.0464018 1.59786 2.43027 -0.758727 0.361819 -0.543582 -0.619429
Column 27 1.62083 0.724505 -0.245434 -0.22294 -0.813732 0.905668 1.13267
Column 28 -0.444306 0.965035 1.28921 0.369303 0.166729 -0.0905851 -0.0155808
Column 29 0.505466 1.47759 -1.59349 -0.0859496 -1.12179 -0.0626848 0.218185
Column 30 0.259418 1.47686 0.0704444 0.126964 0.438607 -0.450097 0.0636362
Column 31 0.1223593 0.138027 0.821055 -0.149506 -0.648333 0.0466454 0.05839
Column 32 -0.137711 1.09878 1.50376 -1.1957 -2.27564-0.0705087-0.0719681
Column 33 -1.16409 0.448783 -0.611316 -1.51822 -0.357172 -0.0793005 -0.675006
Column 34 0.896792 1.32823 -1.46539 -0.526185 -1.45118 0.365266 1.14011
Column 35 -0.501166 -0.277238 -0.222123 -0.447451 0.30297 -0.746011 -0.0718401
Column 36 0.663114 0.565621 -1.2924 0.9073 -0.465291 -0.129582 0.0032532
Column 37 -1.32892 -0.167743 1.35512 -2.17939 -1.22136 1.07057 -0.555388
Column 38 0.694475 -0.0135412 -1.09117 -0.142523 0.715913 0.917778 -1.86299
Column 39 -0.849892 -1.52328 0.00708517 1.05427 -0.43184 0.0150313 -2.13113
Python