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

df.num_columns

当前回答

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.info()函数会给你如下所示的结果。 如果您正在使用Pandas的read_csv方法,不带sep参数或sep带“,”。

raw_data = pd.read_csv("a1:\aa2/aaa3/data.csv")
raw_data.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 5144 entries, 0 to 5143
Columns: 145 entries, R_fighter to R_age

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

这里是:

熊猫 Excel引擎:xlsxwriter

获得列数的几种方法:

Len (df.columns) -> 28 df。形状[1]-> : df。形状= (592,28) 相关的 行数:df。形状[0]-> 592 df.columns。形状[0]-> 这里:df.columns.shape = (28,) Df.columns.size ->

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

len(df.columns)

给出列数。

对于想知道行数的同学

len(df.index)

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

df.shape
#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))