小编use*_*916的帖子

如何使用 RStudio 用 Stata 命令编写 RMarkdown 文件?

我的问题在标题中得到了解释。我已经尝试编译我在这里找到的示例 .Rmd:http ://www.ssc.wisc.edu/~hemken/Stataworkshops/Stata%20and%20R%20Markdown/ 除了在线查找各种资源无济于事之外。虽然我的资源 Doug 能够编译 RMarkdown,但下面的 MWE 出现错误。

MWE 是:

---
title: "Stata and R Markdown (Windows)"
author: "Doug Hemken"
date: "July 2015"
output: 
html_document:
toc: yes
---

```{r, echo=FALSE, message=FALSE}
require(knitr)
statapath <- "/Applications/Stata/Stata.app"
opts_chunk$set(engine="stata", engine.path=statapath, comment="")
```

### Descriptive Statistics
A simple example.
```{r}
sysuse auto
summarize
```
Run Code Online (Sandbox Code Playgroud)

RStudio 控制台的输出/错误是:

processing file: stata.Rmd
  |................                                                 |  25%
   ordinary text without R code

  |................................                                 |  50%
label: unnamed-chunk-1 (with options) 
List of 2
$ echo   : logi FALSE …
Run Code Online (Sandbox Code Playgroud)

stata rstudio r-markdown

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

Pandas:如果df1列的值在df2列的列表中,则加入

假设我们有两个Pandas DataFrame,如下所示:

df1 = pd.DataFrame({'id': ['a', 'b', 'c']})
df1
    id
0   a
1   b
2   c

df2 = pd.DataFrame({'ids': [['b','c'], ['a', 'b'], ['a', 'z']], 
                    'info': ['asdf', 'zxcv', 'sdfg']})
df2
    ids     info
0   [b, c]  asdf
1   [a, b]  zxcv
2   [a, z]  sdfg
Run Code Online (Sandbox Code Playgroud)

我如何加入/合并的行df1df2地方df1.iddf2.ids

换句话说,我如何实现以下目标:

df3
   id   ids     info
0  a    [a, b]  asdf
1  a    [a, z]  sdfg
2  b    [b, c]  asdf
3  b    [a, b]  zxcv
4  c    [b, …
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas

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

PostgresQL:从 ARRAY_AGG() 中查找输出的数组长度

如何计算由ARRAY_AGG()PostgresQL创建的数组对象中不同元素的数量?这是一个用于讨论的玩具示例:

SELECT ARRAY_AGG (first_name || ' ' || last_name) actors
FROM film
Run Code Online (Sandbox Code Playgroud)

我试过ARRAY_LENGTH(),LENGTH()等,像这样:

SELECT ARRAY_LENGTH(a.actors)
FROM (SELECT ARRAY_AGG (first_name || ' ' || last_name) actors
      FROM film) a;
Run Code Online (Sandbox Code Playgroud)

但我收到一个错误:

function array_length(integer[]) does not exist
  Hint: No function matches the given name and argument types. You might need to add explicit type casts.
  Position: 208
Run Code Online (Sandbox Code Playgroud)

所以我尝试了(2):

SELECT ARRAY_LENGTH( CAST(COALESCE(a.actors, '0') AS integer) )
FROM (SELECT ARRAY_AGG (first_name || ' ' || last_name) actors
      FROM film) …
Run Code Online (Sandbox Code Playgroud)

postgresql

5
推荐指数
2
解决办法
4610
查看次数

从PySpark DataFrame中的Python列表中删除元素

我试图从Python列表中删除一个元素:

+---------------+
|        sources|
+---------------+
|           [62]|
|        [7, 32]|
|           [62]|
|   [18, 36, 62]|
|[7, 31, 36, 62]|
|    [7, 32, 62]|
Run Code Online (Sandbox Code Playgroud)

我希望能够rm从上面列表中的每个列表中删除元素.我写了一个函数,可以为列表列表做到这一点:

def asdf(df, rm):
    temp = df
    for n in range(len(df)):
        temp[n] = [x for x in df[n] if x != rm]
    return(temp)
Run Code Online (Sandbox Code Playgroud)

哪个删除rm = 1:

a = [[1,2,3],[1,2,3,4],[1,2,3,4,5]]
In:  asdf(a,1)
Out: [[2, 3], [2, 3, 4], [2, 3, 4, 5]]
Run Code Online (Sandbox Code Playgroud)

但我不能让它适用于DataFrame:

asdfUDF = udf(asdf, ArrayType(IntegerType()))

In: df.withColumn("src_ex", asdfUDF("sources", 32))

Out: Py4JError: …
Run Code Online (Sandbox Code Playgroud)

python apache-spark apache-spark-sql pyspark pyspark-sql

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

data.table :: fread一个`integer64`类型,只为一列手动覆盖colClass

我有一个.csv,其中一列ID包含一个前导零的长整数.fread将其转换为一种integer64类型.如何为一列指定类,然后让其fread自动猜测其余列的类?不确定这是一种"全有或全无"的情况.

我有50多个列,而不是必须为所有这些列指定数据类型,因为我必须为其中一个列这样做.

我的问题与:R fread - 将所有列都读为字符.

r data.table

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

Python,shap 包:如何绘制依赖图网格?

我正在尝试绘制shap包中的依赖图网格。这是我想要的示例的 MWE 代码:

fig, axs = plt.subplots(2,8, figsize=(16, 4), facecolor='w', edgecolor='k') # figsize=(width, height)
fig.subplots_adjust(hspace = .5, wspace=.001)

axs = axs.ravel()

for i in range(10):

    axs[i].contourf(np.random.rand(12,12),5,cmap=plt.cm.Oranges)
    axs[i].set_title(str(250+i))

plt.show()
Run Code Online (Sandbox Code Playgroud)

我想要的布局示例

这是我到目前为止的代码。有几件事不起作用:

  1. 我的网格的图形大小不受我的figsize参数影响
  2. 我的代码在网格下方绘制了更大版本的图。
  3. 网格中仅显示一个依赖图。
fig, axs = plt.subplots(1,8, figsize=(4, 2))
axs = axs.ravel()

for b in X_test.columns[:3]:
    for a in X_test.columns[:3]:
        shap.dependence_plot((a, b), shap_interaction_values, X_test)
Run Code Online (Sandbox Code Playgroud)

我得到的图像: 我得到了什么。

python matplotlib shap

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

R:如何在 ggplot2 中绘制 svm 的超平面和边距?

我正在关注 Tibshirani 的 ISL 文本。我正在尝试在 ggplot2 中绘制 SVM 的结果。我可以获得点和支持向量,但我无法弄清楚如何获得为 2D 情况绘制的边距和超平面。我用谷歌搜索并检查了 e1071 自述文件。通用的动态解决方案(适用于各种 SVM 内核、成本等)会很棒。这是我的 MWE:

set.seed(1)
N=20
x=matrix(rnorm(n=N*2), ncol=2)
y=c(rep(-1,N/2), rep(1,N/2))
x[y==1,] = x[y==1,] + 1;x[y==1,]
dat = data.frame(x=x, y=as.factor(y))
library(e1071)
library(ggplot2)
svmfit=svm(y~., data=dat, kernel="linear", cost=10, scale=FALSE)

df = dat; df
df = cbind(df, sv=rep(0,nrow(df)))
df[svmfit$index,]$sv = 1

ggplot(data=df,aes(x=x.1,y=x.2,group=y,color=y)) +     
    geom_point(aes(shape=factor(sv)))
Run Code Online (Sandbox Code Playgroud)

像这样的东西: 在此处输入图片说明 (来自 Python 的 scikit-learn)

plot r svm ggplot2 libsvm

3
推荐指数
1
解决办法
3571
查看次数

Python:如何并排绘制多个seaborn热图?

我有一个具有20多个功能的Pandas数据框。我想看看他们的相关矩阵。我创建了热图与像下面的代码,用subset1subset2等:

import seaborn as sns
cmap = sns.diverging_palette( 220 , 10 , as_cmap = True )
sb1 = sns.heatmap(
    subset1.corr(), 
    cmap = cmap,
    square=True, 
    cbar_kws={ 'shrink' : .9 }, 
    annot = True, 
    annot_kws = { 'fontsize' : 12 })
Run Code Online (Sandbox Code Playgroud)

我希望能够并排显示上述代码生成的多个热图:

display_side_by_side(sb1, sb2, sb3, . . .)

我不确定如何执行此操作,因为上面的第一个代码块不仅将结果保存到sb1,而且还绘制了热图。另外,不确定如何编写函数display_side_by_side()。我对Pandas数据框使用以下内容:

# create a helper function that takes pd.dataframes as input and outputs pretty, compact EDA results
from IPython.display import display_html
def display_side_by_side(*args):
    html_str = '' …
Run Code Online (Sandbox Code Playgroud)

python plot seaborn

3
推荐指数
1
解决办法
3983
查看次数

PySpark:如何从嵌套在数组内的结构中的结构中提取变量?

以下是一个玩具示例,它是我的实际数据架构的子集。为简洁起见,我将其缩写。

我希望构建一个包含 3 个字段的 PySpark 数据框:IDType然后TIMESTAMP将其保存为 Hive 表。我正在努力使用 PySpark 代码来提取相关列。

 |-- Records: array (nullable = true)
 |    |-- element: struct (containsNull = true)
 |    |    |-- FileID: long (nullable = true)
 |    |    |-- SrcFields: struct (nullable = true)
 |    |    |    |-- ID: string (nullable = true)
 |    |    |    |-- Type: string (nullable = true)
 |    |    |    |-- TIMESTAMP: string (nullable = true)
Run Code Online (Sandbox Code Playgroud)

到目前为止,我想我的解决方案应该类似于:

from pyspark.sql.functions import col, explode

df.withColumn("values", explode("values")).select( …
Run Code Online (Sandbox Code Playgroud)

python dataframe apache-spark-sql pyspark

3
推荐指数
1
解决办法
6417
查看次数

“python2”未被识别为内部或外部命令。Windows 10

我如何添加python2PATHpython工作正常,但是我正在调用一个make文件,该文件指向许多调用python2.

\n\n
C:\\Users\\andcy\\$DETECTRON>python2\n\'python2\' is not recognized as an internal or external command,\noperable program or batch file.\n
Run Code Online (Sandbox Code Playgroud)\n\n

不幸的是,我对相关点的搜索给我带来了不适用的答案。例如,以下 SO 帖子仅显示如何添加python到路径,而不是python2.

\n\n

在 Windows 7 上将 \xe2\x80\x9cpython2\xe2\x80\x9d 路径添加到命令行

\n

python python-2.7

2
推荐指数
1
解决办法
5730
查看次数