小编Rya*_*win的帖子

Rmarkdown图像跳过文本

我正在整理带有以下YAML设置的Rmarkdown PDF文档:

---
output: 
  pdf_document:
    fig_caption: true 
    fig_crop: true
    toc_depth: 3
  header-includes:
  - \usepackage{hyperref}
 ---
Run Code Online (Sandbox Code Playgroud)

在文档正文中,我使用以下语法插入了一些PNG图像

Paragraph 1..........

![Caption](path/image.png)

Paragraph 2....
Run Code Online (Sandbox Code Playgroud)

并且在渲染文档时,图像在文本中,在Paragraph 1和之间显示为预期的Paragraph 2.但是,我得到一些不可预知的结果,Paragraph 2在某些情况下渲染的图像出现后,我无法解决它.

latex r knitr r-markdown

6
推荐指数
2
解决办法
3247
查看次数

在列表中重命名Data.frame的列

我试图使用lapply(并希望lapply的解决方案)重命名列表中的data.frame的列,但它返回名称,而不是重命名的data.frames:

# define list
li <- list(u_n = data.frame(x = 1:3), r_l = data.frame(y = 4:6))

# trying to rename columns after the element of the list they're located in
li_2 <- lapply(1:length(li),
                function(x,y) colnames(y[[x]]) <- names(y)[x], y = li)
Run Code Online (Sandbox Code Playgroud)

但是,这会返回:

[[1]]
[1] "u_n"

[[2]]
[1] "r_l"
Run Code Online (Sandbox Code Playgroud)

如果我使用与lapply单独指定的函数相同的方法,它确实有效:

li[1]
$u_n
  x
1 1
2 2
3 3

colnames(li[[1]]) <- names(li)[1]

li[1]
$u_n
  u_n
1   1
2   2
3   3
Run Code Online (Sandbox Code Playgroud)

r lapply dataframe

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

使用多个条件使用dplyr进行变异

我有一个数据框(df),我想添加一个额外的列result,使用dplyr将取值1 if z == "gone"和where x是组的最大值y.

   y  x    z
1  a  3 gone
2  a  5 gone
3  a  8 gone
4  a  9 gone
5  a 10 gone
6  b  1     
7  b  2     
8  b  4     
9  b  6     
10 b  7     
Run Code Online (Sandbox Code Playgroud)

如果我只是为每个组选择最大值,它将是:

df %>%
  group_by(y) %>%
  slice(which.max(x))
Run Code Online (Sandbox Code Playgroud)

将返回:

   y  x  z
1  a 10  gone
2  b  7      
Run Code Online (Sandbox Code Playgroud)

这不是我想要的.我需要利用x每个组的最大值,y同时检查是否z == "gone",如果TRUE1 则为0.否则为0.这样看起来像:

   y …
Run Code Online (Sandbox Code Playgroud)

r dplyr

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

绘制分组日期时间

这篇文章有点长,所以这里是最终的“问”:

有没有办法转换结果的 x 轴/索引groupby或将其他类型的参数传递给函数axvspan

我有一个DataFrame带有日期时间列,我已将其分组为yearweekofyear。这工作正常,但 x 轴显示为元组。我想要axvspan,但我不知道该由谁来处理这些元组。

import numpy as np
import pandas as pd
import datetime
from matplotlib import pylab
import matplotlib.pyplot as plt
%matplotlib inline

query = ("https://data.cityofchicago.org/resource/6zsd-86xi.json?$where=year>2010")
raw_data = pd.read_json(query)
Run Code Online (Sandbox Code Playgroud)

以下是 的概述DataFrame。我将在专栏中工作date

raw_data.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 1706960 entries, 0 to 1706959
Data columns (total 22 columns):
arrest                  bool
beat                    int64
block                   object
case_number             object
community_area          float64
date                    datetime64[ns]
description             object
district …
Run Code Online (Sandbox Code Playgroud)

python datetime matplotlib pandas

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

下载图片/ png - RCurl

我正在尝试使用Clearbit.com的免费徽标API(https://logo.clearbit.com/:domain)来下载一些公司徽标.

要试用该工具,只需将https://logo.clearbit.com/nike.com粘贴到您的网络浏览器中即可.

目标是将来自GET请求的响应保存为PNG文件.这是我正在使用的代码的一个例子,它失败了.

    library(RCurl)
    url <- "https://logo.clearbit.com/basf.com"
    png <- getURL(url, httpheader = "image/png", ssl.verifypeer = F)
Run Code Online (Sandbox Code Playgroud)

这会产生以下错误消息:

    Error in curlPerform(curl = curl, .opts = opts, .encoding = .encoding) : 
    embedded nul in string:'‰PNG\r\n\032\n\0\0\0\rIHDR\0\0\0\0\0\0\b\006\0\0\0Ã>aË\0\0\0\004gAMA\0\0±\vüa\005\0\0\0 cHRM\0\0z&\0\0€„\0\0ú\0\0\0€è\0\0u0\0\0ê`\0\0:˜\0\0\027pœºQ<\0\0\0\006bKGD\0ÿ\0ÿ\0ÿ ½§“\0\0\0\atIME\aß\006\036\022\0228_nn\005\0\0\027$IDATxÚíyx[Õ÷?÷^IW»dË–÷5v\026'qœ•¤$!%$¡P(]\030Z†y™2CK\aZ\006ž–ç-Ó…¶Ó>}g\nü¥lçi¡e:L\031\030(…°¦¤$$„fOììÞâ}·,YÒ]æ\017+"ŠäÄÄv3ɽŸ<y\022stîÑ9ß{öó;Â뇟Ô11,â…N€É…Å\024€Á1\005`pL\001\030\034S\0\006Ç\024€Á1\005`pL\001\030\034S\0\006Ç2•‘9­^<r\016ƒ£Œ*#IwQÈu•eüNgèxòÿ’hÁoÏG\024$B±>"ñá\v?—<S(\0êœË\bºËÙÛþ\026£§\025¬WΡ¶`mÆo½qd,œßžÇü‚µØ-®¤_W¨‘\003›Q´è…ΧK–I\vÀ#çà·ç‘ï©ÄïÈÏ\030ÆkÏ\005 y`?]¡¦4\177I´RW¸\036«dçP÷{Œ*#ÌÊ]NÐ]Žª)ìïÜt¡óé’eÒ\002(ò΢Ä_sÖ0.[\026\0ý‘\016ú#miþ9Î\022¬’þH;Í\003û\001\020\005‘ùùW’ç©à`×f4]M†\027\004‘ «\034€P¬‘Ø\00Ö„ä8K\023Ïj'¦FD+\005ž*|ö º®Ñ>|,-\r\016«—|Ï\f\\6?è:‘ø0¡ã„bý\0Ø-.|ö<¢Ê\b\021%D©\177. p¤g;N«—|O\025.›\017\035\030\036íáäÐዦ֚´\0:C'\bÇ\a\001(ñÏÅiõ¦…q'\004à°z¨+\\(XÆ\n»\177\037ª®$kˆS\031\0160\020é\004Æú\017n9›¡
Run Code Online (Sandbox Code Playgroud)

我搜索了文档,但我无法解决这个问题,所以请指教.

PS这是我关于stackoverflow的第一篇文章,所以请随意提出关于样式和一般准则的建议.

谢谢,瑞恩

r http rcurl

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

numba.vectorize-不支持的数组dtype

我是新手,numba似乎无法确定要传递给的参数vectorize。这是我想做的事情:

test = [x for x in range(10)]
test2 = ['a', 'a', 'a', 'b', 'b', 'c', 'c', 'c', 'c', 'c']
test_df = pd.DataFrame({'test': test, 'test2': test2})
test_df['test3'] = np.where(test_df['test'].values % 2 == 0,
                            test_df['test'].values, 
                            np.nan)


  test  test2   test3   test4
0    0      a     0.0     0.0
1    1      a     NaN     NaN
2    2      a     2.0     4.0
3    3      b     NaN     NaN
4    4      b     4.0    16.0
5    5      c     NaN     NaN
6    6      c     6.0    36.0
7    7 …
Run Code Online (Sandbox Code Playgroud)

python pandas numba

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

不正确,Python类似于R.

是否有类似于下面的R的好解决方案的Python解决方案?

# R
set.seed(1245)
array_truth <- sample(c(T, F), 10, replace = T)
array_int <- 1:10

# get the integers with False index 
> array_int[!array_truth] 

[1] 1 2 4
Run Code Online (Sandbox Code Playgroud)

在R中,您可以使用!否定,但我没有遇到过Python中的解决方案:

# python
string_data = pd.Series(['aardvark', 'artichoke', np.nan, 'avocado'])
null_values = string_data.isnull()
null_values

0    False
1    False
2     True
3    False
dtype: bool
Run Code Online (Sandbox Code Playgroud)

我所知道的最Pythonic解决方案是:

string_data[null_values != True]

0     aardvark
1    artichoke
3      avocado
dtype: object
Run Code Online (Sandbox Code Playgroud)

如果这是我能做的最好的,那很好,但我是Python的新手并没有在任何地方看到这个具体的问题.

python pandas

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

删除列表的空白子项

嗨,我想删除列表中的空白子项:

l <- list(c(1:3), c(1,"",3))
Run Code Online (Sandbox Code Playgroud)

输出应该是这样的

[[1]]
[1] 1 2 3
[[2]]
[1] 1 3
Run Code Online (Sandbox Code Playgroud)

我试过以下但没有成功:

l[lapply(l, function(x) x != "")]
Run Code Online (Sandbox Code Playgroud)

而我得到的错误:

Error in l[lapply(l, function(x) x != "")] : 
 invalid subscript type 'list'
Run Code Online (Sandbox Code Playgroud)

看似简单,但我还没有在SO上找到解决方案.

r

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

标签 统计

r ×5

pandas ×3

python ×3

dataframe ×1

datetime ×1

dplyr ×1

http ×1

knitr ×1

lapply ×1

latex ×1

matplotlib ×1

numba ×1

r-markdown ×1

rcurl ×1