使用空格获取pandas df列的len()[重复]

问题描述 投票:0回答:1

这个问题在这里已有答案:

我有以下df:

df
   Site In Site Out Transmission Commodity     parameter         value unit
0      Mid    North         hvac      Elec           eff  9.000000e-01     
1      Mid    North         hvac      Elec      inv-cost  1.650000e+06     
2      Mid    North         hvac      Elec      fix-cost  0.000000e+00     
3      Mid    North         hvac      Elec      var-cost  0.000000e+00     
4      Mid    North         hvac      Elec      inst-cap  0.000000e+00     
5      Mid    North         hvac      Elec        cap-lo  0.000000e+00     
6      Mid    North         hvac      Elec        cap-up  1.500000e+15     
7      Mid    North         hvac      Elec          wacc  7.000000e-02     
8      Mid    North         hvac      Elec  depreciation  4.000000e+01     
9      Mid    South         hvac      Elec           eff  9.000000e-01
...     

当我做它跟随它工作:

len(df.Transmission)
54

我如何获得'Site In''Site Out'的len(),因为他们的名字中有空格,我找不到使用.column_name的方法???

说实话,有几种方法可以获得长度,但在这种情况下有没有办法使用.column_name

以下不起作用:

len(df.Site In)
*** SyntaxError: invalid syntax
len(df.SiteIn)
*** AttributeError: 'DataFrame' object has no attribute 'SiteIn'
len(df.Site_In)
*** AttributeError: 'DataFrame' object has no attribute 'Site_In'
len(df.Site' 'In)
*** SyntaxError: invalid syntax
python pandas content-length
1个回答
3
投票
  1. len(df['Site In'])len(df['Site Out'])
  2. 您可以通过分配df['Site Out'].column.valuesdf['Site In'].column.values来重命名列,从而消除空格,您的方法也可以。
  3. 或者,你可以使用df.iloc(1)为df ['Site In']或df.iloc(2)为df ['Site Out']解决它们。

还有很多方法,但这些方法最常见。

© www.soinside.com 2019 - 2024. All rights reserved.