显示 Pandas DataFrame 的所有列
在现实生活中的例子中,我们会遇到包含成百上千行和列的大型数据集。为了处理这样大块的数据,我们需要熟悉数据的行、列和类型。在很多情况下,我们还需要存储列的名称,以方便以后提取元素或作其他用途。
在正常情况下,我们通常使用 dataframe.columns
来提取 DataFrame 的列名。这对于小数据集来说是可行的,但是如果我们处理的 DataFrame 有一百多列,这种方法就会被证明不是那么有效。
下面的例子将说明 dataframe.columns
的问题。
import pandas as pd
import numpy as np
df = pd.DataFrame(columns=np.arange(150))
print(df.columns)
type(df.columns)
输出:
Int64Index([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
...
140, 141, 142, 143, 144, 145, 146, 147, 148, 149],
dtype='int64', length=150)
pandas.core.indexes.numeric.Int64Index
在上面的例子中,我们生成了一个空的 DataFrame,有 150 个列,从 0 到 149,从输出中可以看出,我们无法查看所有的列。我们只能看到前几列和后几列的名称,而且输出的不是一个列表或 Series
,我们可以方便地存储和访问,以便进一步使用。
有一个简单的方法可以解决上述问题,我们可以将 dataframe.columns
的结果转换为一个列表或者 NumPy 数组。
使用列表来显示 Pandas DataFrame 的所有列
为此,我们可以使用两种方法,tolist()
或 list()
。这两个函数都将列名转换为一个列表,并给出相同的输出。
使用 tolist()
的示例:
import pandas as pd
import numpy as np
df = pd.DataFrame(columns=np.arange(150))
print(df.columns.tolist())
type(df.columns.tolist())
输出:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149]
list
使用 list()
的示例:
import pandas as pd
import numpy as np
df = pd.DataFrame(columns=np.arange(150))
print(list(df.columns))
type(list(df.columns))
输出:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149]
list
使用 NumPy 数组显示 Pandas DataFrame 的所有列
我们可以使用 values()
函数将 dataframe.columns
的结果转换为 NumPy 数组。
例子:
import pandas as pd
import numpy as np
df = pd.DataFrame(columns=np.arange(150))
print(df.columns.values)
type(df.columns.values)
输出:
[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107
108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
144 145 146 147 148 149]
numpy.ndarray
相关文章
DataFrame 获取给定列的第一行
发布时间:2024/04/22 浏览次数:51 分类:Python
-
本教程介绍了如何在 Pandas DataFrame 中使用 Series.loc()和 Series.iloc()方法获取给定列的第一行。
如何基于 Pandas 中的给定条件创建 DataFrame 列
发布时间:2024/04/22 浏览次数:147 分类:Python
-
我们可以使用列表推导技术,numpy 方法,apply()方法和 map()方法对 Pandas 中的给定条件创建 DataFrame 列。
在 Pandas 的 DataFrame 中合并两列文本
发布时间:2024/04/22 浏览次数:99 分类:Python
-
在 Pandas 库中使用 + 运算符,apply(),map(),str.cat(),agg()方法在 DataFrame 中合并列
Pandas DataFrame DataFrame.append() 函数
发布时间:2024/04/22 浏览次数:92 分类:Python
-
Pandas 中的 append 方法将两个不同 DataFrame 的行合并,并返回新的 DataFrame。
Pandas DataFrame DataFrame.apply() 函数
发布时间:2024/04/22 浏览次数:172 分类:Python
-
Pandas DataFrame apply()函数将输入的函数应用到 Pandas DataFrame 的每一个沿行或沿列的元素。
Pandas DataFrame DataFrame.aggregate() 函数
发布时间:2024/04/22 浏览次数:98 分类:Python
-
Pandas DataFrame aggregate()函数对 DataFrame 的列或行进行聚合。