数据是关于股票数据的dataframe,里面包括股票代码、交易日期。
然后我想剔除每个月交易日小于15天的数据,
现在的问题是:
我已经从总的股票数据dataframe1中获取了每个月交易日小于15天的dataframe2,我也拥有原来的总的股票数据dataframe1,【也就是说dataframe2是dataframe1的子集】
我想让dataframe1-dataframe2,也就是实现对dataframe1进行操作,让他的数据不再包括dataframe2
请问这该如何做呢?谢谢回答
数据是关于股票数据的dataframe,里面包括股票代码、交易日期。
然后我想剔除每个月交易日小于15天的数据,
现在的问题是:
我已经从总的股票数据dataframe1中获取了每个月交易日小于15天的dataframe2,我也拥有原来的总的股票数据dataframe1,【也就是说dataframe2是dataframe1的子集】
我想让dataframe1-dataframe2,也就是实现对dataframe1进行操作,让他的数据不再包括dataframe2
请问这该如何做呢?谢谢回答
这里我们不清楚股票数据格式是怎么样的,假设是这样的:
>>> dt = {'date_time': ['2018-03-11', '2018-03-12', '2018-03-16', '2018-03-17'], 'code': ['000000', '000001', '000002', '000003']}
>>> dateframe1 = pandas.DataFrame(data=dt)
>>> dateframe1
code date_time
0 000000 2018-03-11
1 000001 2018-03-12
2 000002 2018-03-16
3 000003 2018-03-17
也不清楚是如何得到dateframe2
的,假设是这样得到的:
>>> dateframe2 = dateframe1[dateframe1.date_time < '2018-03-15']
>>> dateframe2
code date_time
0 000000 2018-03-11
1 000001 2018-03-12
那么参考pandas DateFrame 的 drop 函数用法,可以用下面方法得到需要的dateframe3:
>>> dateframe3 = dateframe1.drop(labels=dateframe2.axes[0])
>>> dateframe3
code date_time
2 000002 2018-03-16
3 000003 2018-03-17
一般从 DateFrame 中去除特定行可以使用DateFrame.drop
方法。
4 回答4.4k 阅读✓ 已解决
1 回答3.1k 阅读✓ 已解决
4 回答3.8k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
1 回答4.4k 阅读✓ 已解决
1 回答3.9k 阅读✓ 已解决
1 回答2.8k 阅读✓ 已解决
如果你dataframe2的index和dataframe1是一致的
dataframe1.drop(dataframe2.index)