草庐IT

采样位数

全部标签

python - 加快内核估计的采样

这是我正在使用的更大代码的MWE。基本上,它对位于特定阈值以下的所有值在KDE(kerneldensityestimate)上执行蒙特卡罗积分(在这个问题BTW上建议了积分方法:Integrate2Dkerneldensityestimate)。importnumpyasnpfromscipyimportstatsimporttime#Generatesomerandomtwo-dimensionaldata:defmeasure(n):"Measurementmodel,returntwocoupledmeasurements."m1=np.random.normal(size=n)

python - Pandas 相当于整数索引的重采样

我正在寻找一个pandas等效于resample方法的数据帧,它不是DatetimeIndex而是一个整数数组,甚至可能是float。我知道在某些情况下(例如thisone),重采样方法可以很容易地用重新索引和插值代替,但在某些情况下(我认为)它不能。例如,如果我有df=pd.DataFrame(np.random.randn(10,2))withdates=df.set_index(pd.date_range('2012-01-01',periods=10))withdates.resample('5D',np.std)这给了我012012-01-011.1845820.492113

Python Pandas - 如何通过 describe 函数计算 25 个百分位数

对于数据框中的给定数据集,当我应用describe函数时,我得到了基本统计数据,包括最小值、最大值、25%、50%等。例如:data_1=pd.DataFrame({'One':[4,6,8,10]},columns=['One'])data_1.describe()输出是:Onecount4.000000mean7.000000std2.581989min4.00000025%5.50000050%7.00000075%8.500000max10.000000我的问题是:计算25%的数学公式是什么?1)据我所知,是:formula=percentile*n(nisnumberofva

python - 当我取数组列的中位数时,如何忽略零?

我有一个简单的numpy数组。array([[10,0,10,0],[1,1,0,0][9,9,9,0][0,10,1,0]])我想分别取这个数组每一列的中位数。但是,在计算中位数时,我想在各个地方忽略一些0值。更复杂的是,我想保留只有0条目的列的中位数为0。以这种方式,这些列将充当一些占位符,使矩阵的维度保持不变。numpy文档没有任何参数可以满足我的需求(也许我被R中的许多开关宠坏了!)numpy.median(a,axis=None,out=None,overwrite_input=False)[来源]有人可以阐明一种符合numpy精神的有效方法吗?我可以破解它,但在那种情况下,

python - 在 scikit-learn 和/或 pandas 中重新采样

Pandas或Scikit-learn中是否有根据指定策略进行重采样的内置函数?我想根据分类变量对数据重新采样。例如,如果我的数据有75%的男性和25%的女性,但我想用50%的男性和50%的女性来训练我的模型。(我还希望能够概括为不是50/50的情况)我需要的是根据指定比例对我的数据重新采样的东西。 最佳答案 我在下面尝试了一个函数来做我想做的事。希望这对其他人有帮助。X和y分别假定为PandasDataFrame和Series。defresample(X,y,sample_type=None,sample_size=None,cl

python - 获取 Pandas 中的日期分位数

我有一些看起来像这样的数据:usertimestampvalue1a2007-01-017a2007-02-028a2007-02-039b2007-02-041a2007-02-052b2007-02-063b2007-02-074a2007-02-085...每个用户都有不同数量的条目。我的目标是了解这些条目的生成速度,并输出如下内容:last_entrymedian_entryfirst_entryusera2007-02-082007-02-032007-01-01b2007-02-072007-02-062007-02-04到目前为止,我的代码如下:gb=df.groupby

python - 将两位数整数转换为python列表中的一位数?

list1=[6,10,4,8,2,12,10]我想将list1中大于或等于10的所有整数转换为一个整数。例如,10:1+0=1,12:1+2=3。输出列表应该是:list1=[6,1,4,8,2,3,1]任何人都可以帮我解释一下逻辑吗?到目前为止我尝试过的逻辑不起作用:foritrinlist1:if(itr>=10):itr1=str(itr)itr2=eval(itr[0]+itr[1]) 最佳答案 如果第一次迭代的总和大于10,则这些示例都不起作用,例如999->27。将此场景解释为999->27->9,您可以使用以下函数:

python - 重采样非时间序列数据

我有一些数据正在使用数据框和Pandas处理。它们包含大约10000行和6列。问题是,我做了几次试验,不同的数据集的索引号略有不同。(这是对多种Material的“力-长度”测试,当然测量点并没有完全对齐。)现在我的想法是,使用包含长度值的索引“重新采样”数据。pandas中的重采样功能似乎只适用于datetime数据类型。我尝试通过to_datetime转换索引并成功。但是在重采样之后,我需要回到原来的比例。某种from_datetime函数。有什么办法还是我走错了路,应该更好地使用像groupby这样的函数?编辑添加:数据如下所示。长度用作索引。在这些Dataframes中,我有一

python - 使用 pandas 将贸易数据重采样为 OHLCV

我在pandasDataFrame中有历史交易数据,包含价格和交易量列,由DateTimeIndex索引。例如:>>>printdf.tail()pricevolume2014-01-1514:29:54+00:00949.9750.012014-01-1514:29:59+00:00941.3700.012014-01-1514:30:17+00:00949.9750.012014-01-1514:30:24+00:00941.3700.012014-01-1514:30:36+00:00949.9750.01现在,我可以使用df.resample(freq,how={'price'

python - Tensorflow 负采样

我正在尝试遵循关于tensorflow的大胆教程,在该教程中我遇到了以下两行词嵌入模型:#Lookupembeddingsforinputs.embed=tf.nn.embedding_lookup(embeddings,train_dataset)#Computethesoftmaxloss,usingasampleofthenegativelabelseachtime.loss=tf.reduce_mean(tf.nn.sampled_softmax_loss(softmax_weights,softmax_biases,embed,train_labels,num_sampled