小编cha*_*low的帖子

使用stat_function在ggplot2中绘制部分阴影的法线曲线

我是R语言的初学者,对于创建法线时ggplot如何使用变量“ x”感到非常困惑。

我的情况是这样。我正在尝试绘制具有特定均值和标准偏差的法线曲线,并且在没有数据的情况下,我看到的最常用的方法如下:

score = 1800
m = 1500
std = 300

ggplot(data.frame(x = c(300, 2700)), aes(x = x)) + stat_function(fun = 
     dnorm, args = list(mean = m, sd = std)) + scale_x_continuous(name 
     = "Score", breaks = seq(300, 2700, std))
Run Code Online (Sandbox Code Playgroud)

我想为曲线的特定区域着色,因此使用Internet创建了如下函数:

funcShaded <- function(x) {
    y = dnorm(x, mean = m, sd = std)
    y[x < score] <- NA
    return(y)
}
Run Code Online (Sandbox Code Playgroud)

然后用 p + stat_function(fun = funcShaded, geom="area", fill="#84CA72", alpha=.2)

这可以创建我想要的图形。但是,我对此有2个问题。首先,当我分解代码时

data.frame(x = c(300, 2700))
Run Code Online (Sandbox Code Playgroud)

如您所料,创建了一个两个项目的数据框,因此如何将其用于创建x轴值,并进一步传递给要适当使用的函数(读取它,就像它是值列表一样)?

其次,我现在想稍后再使用此函数,以根据不同的分数(例如score2 = 1630 …

r function ggplot2 dataframe

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

根据Python中的循环理解列表理解

非常新的Python学习者 - 请温柔.我在使用Python中的列表推导概念时遇到了一些问题,所以我试图用for循环来区分列表推导代码.

我遇到了一个问题,其中我有两个列表:一个是值列表,第二个是索引列表.工作是使用索引列表从值列表中提取这些列以创建更短的列表.例如,如果列表是:

my_table = ['1', '2', '3', '4']
           ['5', '6', '7', '8']
           ['-2', '-3', '-4', '-5']

col_indices = [0, 2]
Run Code Online (Sandbox Code Playgroud)

我们想要:

Output = ['1', '3']
         ['5', '7']
         ['-2', '-4']
Run Code Online (Sandbox Code Playgroud)

所以我之前在Stack Overflow上看过这篇文章,我知道用一个列表理解来做到这一点的方法如下:

answer = []
for row in my_table:
    reduced_row = [row[idx] for idx in col_indices] 
    answer.append(reduced_row)
return answer
Run Code Online (Sandbox Code Playgroud)

说实话,我有点得到这个但不完全.为了更好地理解我尝试编写一些嵌套循环来获得相同的结果,但意识到我没有一个很好的方法用我目前的理解水平来做到这一点.

最初我尝试了以下内容:

col_list = []
for row in my_table:
    for idx in col_indices:
        new = [row[idx]]
        col_list.append(new)    
return col_list
Run Code Online (Sandbox Code Playgroud)

但我知道这是错误的,因为它只是将第一列的价值追加到第一列.简而言之,我知道列表理解是从这样的索引中提取列的更有效的方法,但是这个代码是为我提供的,我不确定我是否可以用我当前的理解水平自己编写它.为了更好地解析列表理解的想法,我试图找出一种方法,只能使用循环,但我还没有想出办法.有人可以帮我解决这个问题,希望我能更好地处理这段代码的工作原理吗?

python loops list-comprehension list

0
推荐指数
1
解决办法
50
查看次数

标签 统计

dataframe ×1

function ×1

ggplot2 ×1

list ×1

list-comprehension ×1

loops ×1

python ×1

r ×1