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

df.num_columns

当前回答

选择:

df.shape[1]

(df。形状[0]是行数)

其他回答

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))。

#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))

很惊讶我还没见过这个,所以话不多说,下面是:

df.columns.size

选择:

df.shape[1]

(df。形状[0]是行数)