我在knitr中运行python引擎时遇到了麻烦.我可以导入一些模块而不是其他模块.例如,我可以导入numpy但不能导入pandas.
{r, engine='python'}
import pandas
我收到了错误.
Quitting from lines 50-51 (prepayment.Rmd)
Error in (knit_engines$get(options$engine))(options) :
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named pandas
Calls: <Anonymous> ... process_group.block -> call_block -> block_exec -> in_dir -> <Anonymous>
In addition: Warning message:
running command ''python' -c 'import pandas' 2>&1' had status 1
Execution halted
Run Code Online (Sandbox Code Playgroud)
它必须与系统路径和我指向的位置有关.
通常在我使用的IPython中
import sys
sys.path.append('/path/to/directory/')
Run Code Online (Sandbox Code Playgroud)
添加路径 我不知道问题是什么.
我有一个这样的语句,我用来递减一个计数器:
UPDATE stats SET counter = counter - 1 WHERE id = 24235;
Run Code Online (Sandbox Code Playgroud)
问题是,我从不希望计数器低于1。如何执行更新语句,该语句只会递减直到1?
PG 9.3 版
yihui 给出了一个针对不同引擎使用缓存选项的示例
https://github.com/yihui/knitr-examples/blob/master/023-engine-python.Rmd
我似乎无法让它为 python 工作。
以下作品
```{r,engine='python',cache=TRUE}
x=10
print x
```
Run Code Online (Sandbox Code Playgroud)
但这不起作用
```{r,engine='python',cache=TRUE}
x = 10
```
```{r,engine='python',cache=TRUE}
print x
```
Run Code Online (Sandbox Code Playgroud)
有人有想法吗?
由于某些原因,协变量的顺序似乎与LogisticRegressionscikit-learn中的分类器有关,这对我来说似乎很奇怪.我有9个协变量和一个二进制输出,当我改变列的顺序和调用fit()然后调用predict_proba()输出是不同的.下面的玩具示例
logit_model = LogisticRegression(C=1e9, tol=1e-15)
Run Code Online (Sandbox Code Playgroud)
下列
logit_model.fit(df['column_2','column_1'],df['target'])
logit_model.predict_proba(df['column_2','column_1'])
array([[ 0.27387109, 0.72612891] ..])
Run Code Online (Sandbox Code Playgroud)
给出不同的结果:
logit_model.fit(df['column_1','column_2'],df['target'])
logit_model.predict_proba(df['column_1','column_2'])
array([[ 0.26117794, 0.73882206], ..])
Run Code Online (Sandbox Code Playgroud)
这对我来说似乎很令人惊讶,但也许这就是我对算法内部和拟合方法缺乏了解.
我错过了什么?
编辑:这是完整的代码和数据
数据:https://s3-us-west-2.amazonaws.com/gjt-personal/test_model.csv
import pandas as pd
from sklearn.linear_model import LogisticRegression
df = pd.read_csv('test_model.csv',index_col=False)
columns1 =['col_1','col_2','col_3','col_4','col_5','col_6','col_7','col_8','col_9']
columns2 =['col_2','col_1','col_3','col_4','col_5','col_6','col_7','col_8','col_9']
logit_model = LogisticRegression(C=1e9, tol=1e-15)
logit_model.fit(df[columns1],df['target'])
logit_model.predict_proba(df[columns1])
logit_model.fit(df[columns2],df['target'])
logit_model.predict_proba(df[columns2])
Run Code Online (Sandbox Code Playgroud)
原来与之相关,tol=1e-15因为这会产生不同的结果.
LogisticRegression(C=1e9, tol=1e-15)
Run Code Online (Sandbox Code Playgroud)
但是这给出了相同的结果.
LogisticRegression(C=1e9)
Run Code Online (Sandbox Code Playgroud) :cached为Mac性能调整添加卷安装是否会影响Windows卷安装的docker?
我正在一个同时使用Mac和Windows机器的团队中工作,它似乎仍然可以工作,但是想看看是否还有其他人可以添加。
这是docker docs链接https://docs.docker.com/docker-for-mac/osxfs-caching/
但是他们没有说它如何影响窗户?
他们在文档中提供了一个示例。
docker run -v /Users/yallop/project:/project:cached alpine command
Run Code Online (Sandbox Code Playgroud)
干杯。
python ×3
knitr ×2
r ×2
docker ×1
pandas ×1
postgresql ×1
python-3.x ×1
scikit-learn ×1
sys ×1