小编Bar*_*ich的帖子

ValueError:x_new中的值低于插值范围

这是我学习时出现的scikit-learn错误

my_estimator = LassoLarsCV(fit_intercept=False, normalize=False, positive=True, max_n_alphas=1e5)
Run Code Online (Sandbox Code Playgroud)

请注意,如果我将max_n_alphas从1e5减少到1e4,我不会再出现此错误.

任何人都知道发生了什么?

我打电话时发生错误

my_estimator.fit(x, y)
Run Code Online (Sandbox Code Playgroud)

我有尺寸的40k数据点40.

完整的堆栈跟踪看起来像这样

  File "/usr/lib64/python2.7/site-packages/sklearn/linear_model/least_angle.py", line 1113, in fit
    axis=0)(all_alphas)
  File "/usr/lib64/python2.7/site-packages/scipy/interpolate/polyint.py", line 79, in __call__
    y = self._evaluate(x)
  File "/usr/lib64/python2.7/site-packages/scipy/interpolate/interpolate.py", line 498, in _evaluate
    out_of_bounds = self._check_bounds(x_new)
  File "/usr/lib64/python2.7/site-packages/scipy/interpolate/interpolate.py", line 525, in _check_bounds
    raise ValueError("A value in x_new is below the interpolation "
ValueError: A value in x_new is below the interpolation range.
Run Code Online (Sandbox Code Playgroud)

python regression scikit-learn lars

7
推荐指数
1
解决办法
2940
查看次数

这个C++模板宏是什么意思?

有人可以帮我解决这个问题吗?我知道宏,我对模板非常熟悉,但我不知道作者用这个表达了什么.什么是预期用途,为什么这样写?我们在这里定义的是什么?如何以及为何使用此功能?

#define MY_CLASS(RET_TYPE, ... )\
    template<typename Derived>\
    __VA_ARGS__\
    RET_TYPE my_class_impl<Derived>
Run Code Online (Sandbox Code Playgroud)

我也有类似的东西

MY_CLASS( )::my_class_impl( int arg_id )
Run Code Online (Sandbox Code Playgroud)

我也看到了

template<typename Derived>
class my_class_impl
Run Code Online (Sandbox Code Playgroud)

我从一位同事那里听说这是CRTP的案例(好奇地反复出现模板模式),但他没有更具体的见解.

另外,我看到它随后如下使用:

MY_CLASS(some_type)::find_desired_val(int x) {
// some code
}
Run Code Online (Sandbox Code Playgroud)

那么,my_class_impl在实际实现它时,宏用于替换类的方法签名?

c++ macros templates variadic-functions c++14

6
推荐指数
1
解决办法
202
查看次数

Pandas DataFrame - 删除在特定列与前一行具有相同值的行

我有一个 Pandas 数据框,我想检查每一行是否在特定列中具有相同的值(我们称之为 porduct_type),如果是,则将其删除。换句话说,在特定列具有相同值的一组连续行中,我只想保留一个。

例如,如果 A 列是我们不希望连续重复的列:

input =  
A    B

    0  1    1
    0  2    2
    2  1   10
    2  2   20
    0  11  100
    5  2  200

output =  
A    B

    0  1    1
    2  1   10
    0  11  100
    5  2  200
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas

5
推荐指数
1
解决办法
4935
查看次数

Pandas 数据框组:对一列求和,从其他列中获取第一个元素

我有一个熊猫数据框

x = pd.DataFrame.from_dict({'row':[1, 1, 2, 2, 3, 3, 3], 'add': [1, 2, 3, 4, 5, 6, 7], 'take1': ['a', 'b', 'c', 'd', 'e', 'f', 'g'], 'take2': ['11', '22', '33', '44', '55', '66', '77'], 'range': [100, 200, 300, 400, 500, 600, 700]})


   add  range  row take1 take2
0    1    100    1     a    11
1    2    200    1     b    22
2    3    300    2     c    33
3    4    400    2     d    44
4    5    500    3     e    55
5    6    600 …
Run Code Online (Sandbox Code Playgroud)

python group-by dataframe pandas

5
推荐指数
1
解决办法
3170
查看次数

Python代码从IDE运行,但不从终端运行

当我尝试从Linux终端运行代码时,我的导入不起作用.具体来说,从同一项目中的其他包导入.我知道这是一个PYTHONPATH问题,但我不知道如何进一步诊断或解决它.代码在IDE(eclipse)中运行良好.

我对永久解决方案感兴趣,猜测它将涉及编辑.bashrc.我只是想从命令行调用脚本,比如

python my_script.py
Run Code Online (Sandbox Code Playgroud)

os.environ["PYTHONPATH"] 在ipython终端中给出了一个关键错误.

我试过了

print os.getcwd()
print sys.path
Run Code Online (Sandbox Code Playgroud)

在IDE里面

/home/myname/workspace/project2/main

['/home/myname/workspace/project2/main', '/home/myname/workspacep/problem2', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_6
4-linux-gnu', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/p
ython2.7/dist-packages', '/usr/lib/python2.7/dist-packages/PILcompat', '/usr/lib/python2.7/dist-packages/gtk-2.0', '/usr/lib/pytho
n2.7/dist-packages/ubuntu-sso-client', '/usr/lib/pymodules/python2.7', '/usr/lib/python2.7/lib-old']
Run Code Online (Sandbox Code Playgroud)

内部终端

/home/myname/workspace/project2/main

['/home/myname/workspace/project2/main', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages/PILcompat', '/usr/lib/python2.7/dist-packages/gtk-2.0', '/usr/lib/python2.7/dist-packages/ubuntu-sso-client']
Run Code Online (Sandbox Code Playgroud)

python python-import pythonpath

5
推荐指数
1
解决办法
2618
查看次数

Pandas - 对 DataFrame 索引应用转换

这是我的代码

import pandas as pd
x = pd.DataFrame.from_dict({'A':[1,2,3,4,5,6], 'B':[10, 20, 30, 44, 48, 81]})
a = x['A'].apply(lambda t: t%2==0) # works
c = x.index.apply(lambda t: t%2==0) # error
Run Code Online (Sandbox Code Playgroud)

我怎样才能使该代码以最简单的方式工作?我知道如何reset_index()将其视为列,但我很好奇是否可以像常规列一样对索引进行操作。

python dataframe pandas

5
推荐指数
1
解决办法
2950
查看次数

Sklearn拟合与预测,列顺序重要吗?

假设X1X2是2个熊猫数据框,它们具有相同的列,但顺序可能不同。假设模型是某种sklearn模型,例如LassoCV。说我做model.fit(X1, y),然后model.predict(X2)。列以不同顺序排列是一个问题,还是模型为列名减轻了权重?

此外,同样的问题,但如果X1X2和numpy的阵列?

python machine-learning scikit-learn

5
推荐指数
1
解决办法
1509
查看次数

Python-灰度图像到3个通道

我有看起来像这样的代码

from skimage import io as sio
test_image = imread('/home/username/pat/file.png')
test_image  = skimage.transform.resize(test_image, (IMG_HEIGHT, IMG_WIDTH), mode='constant', preserve_range=True)
print test_image.shape # prints (128,128)
print test_image.max(), test_image.min() # prints 65535.0 0.0
sio.imshow(test_image)
Run Code Online (Sandbox Code Playgroud)

更重要的是,我需要将该图像分成3个通道,这样我才能将其输入到期望有这种输入的神经网络中,怎么做呢?

我想将一个1通道的图像转换成一个3通道的图像,当我绘制它时,它看起来是合理的,有意义的等等。如何?

我尝试使用0填充,我尝试为3个通道复制相同的值3次,但是当我尝试显示图像时,看起来像乱七八糟的东西。那么,如何将图像转换成3个通道,即使它变成蓝标而不是灰度,但仍然能够以有意义的方式可视化?

编辑:如果我尝试

test_image = skimage.color.gray2rgb(test_image)
Run Code Online (Sandbox Code Playgroud)

我得到全白色图像,并带有一些黑点。

如果尝试,我会得到相同的全白,罕见的小黑点

convert Test1_PC_1.tif -colorspace sRGB -type truecolor Test1_PC_1_new.tif
Run Code Online (Sandbox Code Playgroud)

在尝试使用gray2rgb进行转换之前

print type(test_image[0,0])
<type 'numpy.uint16'>
Run Code Online (Sandbox Code Playgroud)

print type(test_image[0,0,0])
<type 'numpy.float64'>
Run Code Online (Sandbox Code Playgroud)

python numpy image image-processing scikit-image

5
推荐指数
1
解决办法
3832
查看次数

Logle回归与sklearn

不确定这是否是这个问题的好地方,但我被告知CrossValidated不是.所以,所有这些问题都涉及sklearn,但如果你对逻辑回归有一般的见解,我也很乐意听到它们.

1)数据是否必须标准化(平均0,stdev 1)?
2)在sklearn中,如何指定我想要的正则化类型(L1与L2)?请注意,这与惩罚不同; 惩罚是指分类错误,而不是对系数的修正.
3)我如何使用变量选择?即,类似于用于线性回归的套索.
4)使用正则化时,如何优化C,正则化强度?有内置的东西,还是我自己要照顾好这个?

可能一个例子是最有帮助的,但我很欣赏任何这些问题的见解.

这是我的出发点:http://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html

非常感谢你提前!

python classification scikit-learn logistic-regression

4
推荐指数
1
解决办法
1898
查看次数

Pandas groupby - 一组不同的值

我有这个数据框

x = pd.DataFrame.from_dict({'cat1':['A', 'A', 'A', 'B', 'B', 'C', 'C', 'C'], 'cat2':['X', 'X', 'Y', 'Y', 'Y', 'Y', 'Z', 'Z']})

  cat1 cat2
0    A    X
1    A    X
2    A    Y
3    B    Y
4    B    Y
5    C    Y
6    C    Z
7    C    Z
Run Code Online (Sandbox Code Playgroud)

我想分组cat1,然后聚合cat2为不同值的集合,例如

  cat1 cat2
0    A    (X, Y)
1    B    (Y,)
2    C    (Y, Z)
Run Code Online (Sandbox Code Playgroud)

这是具有更多列的更大数据框的一部分,每个列都有自己的聚合函数,那么如何将此功能传递给聚合字典?

python dataframe pandas pandas-groupby

4
推荐指数
1
解决办法
3581
查看次数