为了账号安全,请及时绑定邮箱和手机立即绑定

不应为空的数据框为空

不应为空的数据框为空

回首忆惘然 2021-03-29 11:23:36
编码:s = pd.DataFrame(df)print(s.head(3))print(s.loc[s.Product=='A'])输出:  Product  Sales  Date ---------------------------------------------------------------------  0    A      20   2017-5-16   1    A      60   2016-6-16   2    A      30   2015-6-16Empty DataFrameColumns: [Product, Sales, Date]Index: [ ]为什么在这种情况下数据帧为空?该iloc功能运行完美,但是很麻烦,我不想将其用于具有31,000个数据点的185种产品。是的,产品名称在右边输入。我也尝试了isin引发相同错误的函数。注意:类型为Series,但我将其转换为DataFrame。但是,即使在转换之后,它仍显示类型为Series。这可能是关于错误之处的关键见解。
查看完整描述

2 回答

?
月关宝盒

TA贡献1772条经验 获得超5个赞

要消除空格,请尝试:

s['Product'] = s['Product'].str.replace('\s+','')

一旦这样做,s[s['Product'] == 'A']应该给你一些东西。

或者,如果要将空格保留在原始数据框中,则可以有另一列:

s['Product_nospace'] = s['Product'].str.replace('\s+','')

并从那里进行所有过滤。完成后,您可以删除该列:

s.drop(columns=['Product_nospace'], inplace=True)


查看完整回答
反对 回复 2021-04-13
?
茅侃侃

TA贡献1842条经验 获得超21个赞

按照文档操作,尝试以下代码段:

print(s.loc[s['Product']=='A'])

我不知道是否s.Product可行!

希望这会有所帮助。


查看完整回答
反对 回复 2021-04-13
  • 2 回答
  • 0 关注
  • 167 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信