我的Pandas函数返回的结果是"None“,而不是我试图使用我编写的函数过滤的DataFrame。为何会这样呢?我该如何解决这个问题呢?谢谢!
import pandas as pd
nz_data = pd.read_csv('research-and-development-survey-2016-2019-csv.csv', index_col = 2)
def count_of_mining_biz():
if "B_Mining" in nz_data[["Breakdown_category"]] and "Count of businesses" in nz_data[["Units"]]:
return nz_data.loc["2019", "RD_Value"]
print(count_of_mining_biz())Here is how the data looks like.
我正在努力找出2019年采矿业的研发价值。我必须为"Units“列设置条件的原因是,还有另一种类型的数据不是所述业务的计数。
发布于 2021-05-02 17:58:10
.loc[..., ...]的意思是.loc[row_index, col_index],但是没有名为2019的行索引。
在这种情况下,尝试将.loc与布尔掩码一起使用:
def count_of_mining_biz():
category = nz_data['Breakdown_category'] == 'B_Mining'
units = nz_data['Units'] == 'Count of businesses'
year = nz_data['Year'] == 2019
return nz_data.loc[category & units & year].RD_Valuehttps://stackoverflow.com/questions/67354889
复制相似问题