python - 如何从熊猫数据框中按变量删除第一年的数据?
问题描述
我有一个熊猫数据框,其中包含各种股票代码和每天的价格,我希望删除每个符号的第一年数据。
当前数据框:
Date Symbol Price
2009-01-01 00:00:00 A $10.00
2009-01-02 00:00:00 A $11.00
...
2010-01-01 00:00:00 A $12.00
...
2019-01-01 00:00:00 A $15.00
2009-01-01 00:00:00 B $100.00
...
2019-01-01 00:00:00 B $200.00
目标数据框:
Date Symbol Price
2010-01-01 00:00:00 A $12.00
...
2019-01-01 00:00:00 A $15.00
2010-01-01 00:00:00 B $100.00
...
2019-01-01 00:00:00 B $200.00
任何帮助表示赞赏,谢谢!
解决方案
您可以使用 columnData
仅获取年份,然后可以使用它来删除行。
如果Date
是字符串,那么您可以尝试使用
df["Year"] = df["Date"].str[:4]
并使用字符串过滤"2009"
df = df[ df["Year"] != "2009" ]
如果它保留Date
为datetime
对象,那么您可能需要类似的东西
df["Year"] = df["Date"].dt.year
并使用整数过滤2009
df = df[ df["Year"] != 2009 ]
但我不确定。
推荐阅读
- json - Moshi 1.9.1 抛出 java.lang.NoSuchMethodException:
- wordpress - 如何将 __block_editor_compatible_meta_box 参数设置为 false?
- java - 错误:无法启动守护进程。此问题可能是由于守护程序配置不正确造成的
- eclipse - 在 Eclipse 中更改控制台大小
- php - 使用 REST API 的自动完成功能在本地工作,但不能在 Web 服务器上工作
- c - 零填充字符串到有限长度
- python - 如何在图像识别模型中上传新文件
- couchbase - 如何获取 couchbase 中的文档列表,我们必须根据属性过滤另一个数组中的数组?
- excel - 对于给定工作簿的给定工作表,根据其名称上的条件删除该工作表中的所有命名范围
- websocket - Socket IO 监听器在 Android 中不起作用