小编mnm*_*mnm的帖子

用 R 中的乳胶注释 ggplot2 人脸标签

给定一个样本数据集:

size = 10000
dist = seq(0, 10, length.out=size)
cohort.kv = list(A=3,B=40,C=44)
cohort = sample(names(cohort.kv), size, TRUE)
cohort.v = mapply(function(v) cohort.kv[[v]], cohort)
across.kv = list(ONE=1,TWO=2,THREE=3)
across = sample(names(across.kv), size, TRUE)
across.v = mapply(function(v) across.kv[[v]], across)
along.kv = list(FIVE=5, EIGHT=8, ELEVEN=11)
along = sample(names(along.kv), size, TRUE)
along.v = mapply(function(v) along.kv[[v]], along)
df = data.frame(
  dist=dist, cohort=cohort, across=across, along=along,
  value=sin(dist/across.v+cohort.v)*along.v
)
df$across = factor(df$across, levels=names(across.kv))
df$along = factor(df$along, levels=names(along.kv))
Run Code Online (Sandbox Code Playgroud)

我正在尝试将乳胶添加到刻面标签中。这个答案解释了如何将乳胶添加到 ggplot 标签。下面的代码在轴标签中生成一个带有乳胶的分面 ggplot,并修改了分面标签。

library(ggplot2)
# install.packages("latex2exp", dependencies=TRUE)
library(latex2exp)
(
  ggplot(df, …
Run Code Online (Sandbox Code Playgroud)

latex r ggplot2

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

无法导入模块“ lambda_function”:没有名为“ pandas”的模块

START RequestId:3d5691d9-ad79-4eed-a26c-5bc3f1a23a99版本:$ LATEST无法导入模块“ lambda_function”:没有名为“ pandas”的模块
END RequestId:3d5691d9-ad79-4eed-a26c-5bc3f1a23a99

我正在使用Windows 7 64位作为主机OS。

我想做的事

我只想在AWS-Lambda环境中使用熊猫。就像在Windows环境中使用它一样,我正在寻找Lambda的简单解决方案。

到目前为止我尝试过的

  • 在虚拟盒子上安装了Xubuntu。
  • myvenv在virtual-box上的Xubuntu中创建一个虚拟环境。
  • 然后我在中安装了pandas3.6 myvenv。
  • 此后,我复制的文件夹的内容myvenv,在位置'/usr/local/lib/python3.6/site-packages/'我的主机操作系统。
  • 在主机操作系统(Windows 7)中,我创建了一个名为的文件夹packs,粘贴了的内容myvenv。
  • 在主机OS(Windows 7)中创建了一个lambda_function.py脚本packs
  • 然后我拉上的文件夹packs使用7zip的软件并上传它zip在Lambda
  • 在Lambda中,lambda函数处理程序名称为lambda_handler()。该代码段如下所示:

将熊猫作为pd导入

def lambda_handler(event, context):

    dates = pd.date_range('2019001', periods=6)

    df = pd.DataFrame(np.random.randn(6, 4), index=dates, columns=list('ABCD'))
    print(df)
Run Code Online (Sandbox Code Playgroud)
  • 该处理程序的名称为lambda_function.lambda_handler。我已授予lambda-role AWSLambdaFullAccess许可。
  • 超时设置为4分3秒。
  • 测试事件看起来像

    {“ key1”:“如果一切正常,将打印此内容”}

我尝试了以下解决方案:

  • 从这里尝试了针对pandas和numpy的与Linux兼容的预编译二进制文件-真不走运。
  • 拉姆达,改Handler info到python_filename.function_name。对于我来说,这是lambda_function.lambda_handler - …

amazon-s3 python-3.x aws-lambda aws-lambda-layers

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

python中非英语推文的情感分析

目标:将每条推文分类为正面或负面,并将其写入输出文件,其中包含用户名、原始推文和推文的情绪。

代码:

import re,math
input_file="raw_data.csv"
fileout=open("Output.txt","w")
wordFile=open("words.txt","w")
expression=r"(@[A-Za-z0-9]+)|([^0-9A-Za-z \t])|(\w+:\/\/\S+)"

fileAFINN = 'AFINN-111.txt'
afinn = dict(map(lambda (w, s): (w, int(s)), [ws.strip().split('\t') for ws in open(fileAFINN)]))

pattern=re.compile(r'\w+')
pattern_split = re.compile(r"\W+")
words = pattern_split.split(input_file.lower())
print "File processing started"
with open(input_file,'r') as myfile:
for line in myfile:
    line = line.lower()

    line=re.sub(expression," ",line)
    words = pattern_split.split(line.lower())
    sentiments = map(lambda word: afinn.get(word, 0), words)
    #print sentiments
    # How should you weight the individual word sentiments?
    # You could do N, sqrt(N) or 1 for example. Here …
Run Code Online (Sandbox Code Playgroud)

python twitter nlp python-2.7 sentiment-analysis

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

使用 geom_tile 和高度改变瓷砖之间的间距?

使用 geom_tile,我想在每行数据之间放置一条水平线。看起来如果我在美学上使用颜色,它会在水平和垂直方向上都有线条,这不是我想要的。过去,我只是将图块的高度变小,以便它们之间有一些分离。但是,似乎每行的空间量都不同?为什么会这样,有没有办法让分离始终一样?

在此输入图像描述

library(ggplot2)
gn <- c(rep("gn1", 5),  rep("gn2", 5),  rep("gn3", 5),  rep("gn4", 5),  rep("gn5", 5), 
    rep("gn6", 5),  rep("gn7", 5),  rep("gn8", 5),  rep("gn9", 5),  rep("gn10", 5),
    rep("gn11", 5), rep("gn12", 5), rep("gn13", 5), rep("gn14", 5), rep("gn15", 5),
    rep("gn16", 5), rep("gn17", 5), rep("gn18", 5), rep("gn19", 5))

smpl <- rep(c("smpl1", "smpl2", "smpl3", "smpl4", "smpl5"), 19)

mut1 <- c(0, 2, 3, 3, 0)
mut2 <- c(0, 2, 2, 0, 3)
mut3 <- c(2, 0, 2, 0, 3)
mut4 <- c(0, 0, 2, 2, 3)
mut5 …
Run Code Online (Sandbox Code Playgroud)

r ggplot2

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

如何定义接受任何给定值的 Lex 插槽类型(自定义/内置)?

我有插槽名称“备注”。我需要一个插槽类型,它采用用户为此字段提供的任何值。

amazon-web-services amazon-lex

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

多面水平发散堆积条形图,包括使用 dplyr 和 ggplot 的负值

我希望这个例子会很清楚。我想在中间条跨越“0”的地方堆叠条,因为它代表一个中性值。这与李克特量表一起使用。为了重现性,我使用了钻石数据集。

以下示例与我的用例非常接近,并说明了我将“好”或“正”数据按正确顺序排列的困难(因此中性最接近 0)。

这是我的代码:

require(tidyverse)

diamonds_new <- diamonds %>%
  mutate(quality = fct_recode(cut, "Very poor" = "Fair", "Poor" = "Good", "Neutral" = "Very Good", "Good" = "Premium", "Excellent" = "Ideal")) %>% 
  select(color, clarity, quality) %>% 
  group_by(color, clarity, quality) %>% count()

diamonds_bad <- 
  diamonds_new %>% filter(quality %in% c("Very poor", "Poor", "Neutral")) %>% 
  mutate(n = ifelse(quality == "Neutral", -n/2, -n))

diamonds_good <- 
  diamonds_new %>% filter(quality %in% c("Neutral", "Good", "Excellent")) %>% 
  mutate(n = ifelse(quality == "Neutral", n/2, n)) # %>% 
#  arrange(color, clarity, desc(quality)) …
Run Code Online (Sandbox Code Playgroud)

r bar-chart ggplot2 dplyr likert

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

如何使用FactoMineR包以编程方式确定主要成分的列索引?

给定一个包含混合变量(即类别变量和连续变量)的数据框,

digits = 0:9
# set seed for reproducibility
set.seed(17)
# function to create random string
createRandString <- function(n = 5000) {
  a <- do.call(paste0, replicate(5, sample(LETTERS, n, TRUE), FALSE))
  paste0(a, sprintf("%04d", sample(9999, n, TRUE)), sample(LETTERS, n, TRUE))
}

df <- data.frame(ID=c(1:10), name=sample(letters[1:10]),
                 studLoc=sample(createRandString(10)),
                 finalmark=sample(c(0:100),10),
                 subj1mark=sample(c(0:100),10),subj2mark=sample(c(0:100),10)
                 )
Run Code Online (Sandbox Code Playgroud)

我使用软件包执行无监督功能选择 FactoMineR

df.princomp <- FactoMineR::FAMD(df, graph = FALSE)
Run Code Online (Sandbox Code Playgroud)

该变量df.princomp是一个列表。

之后,为了可视化我使用fviz_screeplot()和fviz_contrib()喜欢的主要成分 ,

#library(factoextra)
factoextra::fviz_screeplot(df.princomp, addlabels = TRUE,
                           barfill = "gray", barcolor = "black",
                           ylim = c(0, 50), xlab …
Run Code Online (Sandbox Code Playgroud)

r cluster-analysis pca feature-selection unsupervised-learning

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

将数据压缩成最少量的文本?

我有数据(主要是一系列 numpy 数组),我想将其转换为可以复制/粘贴/通过电子邮件发送等的文本。我创建了以下公式来执行此操作。

def convert_to_ascii85(x):
    p = pickle.dumps(x)
    p = zlib.compress(p)
    return b64.b85encode(p)
Run Code Online (Sandbox Code Playgroud)

我的问题是它产生的字符串比它需要的要长,因为它只使用字母、数字和符号的子集。如果我能够使用 unicode 进行编码,我觉得它可以产生更短的字符串,因为它可以访问更多字符。有没有办法做到这一点?

编辑澄清:我的目标不是最小数量的 data/information/bytes。我的目标是最少的字符数。原因是我发送数据的通道以字符(准确地说是 100k)而不是字节(奇怪,我知道)为上限。我已经测试过我可以发送 100k unicode 字符,我只是不知道如何将我的字节转换为 unicode。

python

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

ggplot中换行文本的行距

我需要更改包装的geom_text层中的行距。

library(ggplot2)
library(stringr)
txt = c('one two three', 'four five six', 'seven eight nine')
p = ggplot(data=NULL, aes(x=1:3, y=1:3, label = str_wrap(txt, width = 3))) + 
  geom_text() + expand_limits(x = c(0.5, 3.5), y = c(0.5, 3.5))
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

但是theme(text=element_text(lineheight = ...))没有效果,因为它theme仅适用于绘图的非数据组件,因此我不清楚如何实现此目的。有什么建议吗?

r ggplot2

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

R ggplot2 geom_smooth - 单调平滑函数

是否可以让 geom_smooth 产生单调递减函数?

第一个例子看起来是单调递减的:

library(tidyverse)

df <- structure(list(x = c(-55, 11, 19, 123, 133, 123, 123, 2, 86, 
84, 179, 179, 179, 179, 25, 85, 84, 179, 179, 179, 179, 25, 86, 
84, 179, 179, 179, 179, 25, 86, 84, 179, 179, 179, 179, 25, 86, 
70, 123, 123, 123, 123, 0, -45, -45, -17, -17, -17, -17, -63, 
48, 40, 67, 67, 67, 67, -25, 11, 10, 67, 67, 67, 67, -25, 11, 
10, 67, 67, 67, 67, -25, …
Run Code Online (Sandbox Code Playgroud)

r nls ggplot2

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