如何以编程方式检索pandas数据框架中的列数?我希望是这样的:

df.num_columns

当前回答

#use a regular expression to parse the column count
#https://docs.python.org/3/library/re.html

buffer = io.StringIO()
df.info(buf=buffer)
s = buffer.getvalue()
pat=re.search(r"total\s{1}[0-9]\s{1}column",s)
print(s)
phrase=pat.group(0)
value=re.findall(r'[0-9]+',phrase)[0]
print(int(value))

其他回答

这为我工作len(list(df))。

有多个选项来获取列号和列信息,如: 让我们检查一下。

local_df = pd.DataFrame (np.random.randint(1、12、大小=(2,6)),列= [a, b, c, d, e, f)) 1. local_df。形状属性返回元组为(row & columns)(0,1)。

local_df.info()——> info方法将返回关于数据帧及其列的详细信息,例如列数,列的数据类型, 不是空值计数,内存使用数据帧 Len (local_df.columns)—> columns属性将返回数据帧列的索引对象,Len函数将返回可用列的总数。 Local_df.head(0)——参数为0的> head方法将返回df的第一行,实际上它只是标题。

假设列数不超过10。循环的乐趣: li_count = 0 对于local_df中的x: Li_count = Li_count + 1 打印(li_count)

像这样:

import pandas as pd
df = pd.DataFrame({"pear": [1,2,3], "apple": [2,3,4], "orange": [3,4,5]})

len(df.columns)
3
import pandas as pd
df = pd.DataFrame({"pear": [1,2,3], "apple": [2,3,4], "orange": [3,4,5]})


print(len(list(df.iterrows())))

给出行长度

3

[Program finished]

如果保存数据帧的变量叫做df,那么:

len(df.columns)

给出列数。

对于想知道行数的同学

len(df.index)

对于包含行数和列数的元组:

df.shape