我已经df
并且我想从中对某些变量的分布进行一些抽样。假设df['type'].value_counts(normalize=True)
返回:
0.3 A
0.5 B
0.2 C
Run Code Online (Sandbox Code Playgroud)
我想做这样的事情sampledf = df.sample(weights=df['type'].value_counts())
,sampledf ['type'].value_counts(normalize=True)
将返回几乎相同的分布。如何在这里通过频率传递 dict?
我已经whl
从http://www.lfd.uci.edu/~gohlke/pythonlibs安装了xgboost
我试过的时候:
import xgboost
Run Code Online (Sandbox Code Playgroud)
我有下一条消息:
d:\ program files\python\lib\site-packages\sklearn\cross_validation.py:44:DeprecationWarning:在0.18版本中不推荐使用此模块,而是支持所有重构的类和函数都移动到的model_selection模块.另请注意,新CV迭代器的接口与此模块的接口不同.该模块将在0.20中删除."此模块将在0.20中删除.",DeprecationWarning)
如果我打印import sklearn
之前import xgboost
没有收到任何消息.我假设这条消息不会影响结果,但如何避免呢?如果所有包都是最新的,我也通过点检查了.
我需要计算某一点的实际值,而不是那时的相对变化.我有典型的时间序列数据(%到前一个时期),需要在某个时间获得资产的实际价值.就像是:
Run Code Online (Sandbox Code Playgroud)Day0 Day1 Day2 Day3 100 1.05 1.05 1.05 100 1.01 1.01 1.01 100 0.99 0.99 0.99
应该是这样的:
Run Code Online (Sandbox Code Playgroud)Day0 Day1 Day2 Day3 100 105 110.25 115.76 100 101 102.01 103.03 100 99 98.01 97.02
我相信我必须使用replace
与apply
在这里,但我有1列的困难.我不知道如何避免使用function
它,将每列乘以前一列.