小编joh*_*ohn的帖子

从 RStudio 运行 pdflatex 时出错 - 更新后无法编译 pdf

我正在尝试在 RStudio 中使用 knitr 制作 pdf(使用 pdflatex/MiKTeX)。我在 Windows 10 机器上。在我本月(2021 年 2 月)更新 R、RStudio 和 MikTeX 之前,这一切正常。我收到一个错误,说,

“在 testdoc.tex 上运行 pdflatex.exe...失败错误运行 C:/Users/myusername/AppData/Local/Programs/MiKTeX/miktex/bin/x64/pdflatex.exe(退出代码 -1073740791)”
或 C:/ PROGRA~1/MiKTeX/miktex/bin/x64/pdflatex.exe

我的文件名为 testdoc.Rnw 并包含:

\documentclass{article}

\begin{document}
some text
\end{document}
Run Code Online (Sandbox Code Playgroud)
  1. 我已经卸载并重新安装了 MiKTeX、R 和 Rstudio,同时尝试了用户和管理员。(我的所有版本都是截至 2021 年 2 月 19 日的最新版本)
  2. 无论我使用用户模式还是管理员模式都会出现此问题。
  3. 错误中给出的路径是正确的。
  4. 我输入时的路径Sys.which("pdflatex")是正确的。
  5. 没有创建日志文件。它只是到达它尝试运行 pdflatex 并给出错误的部分。
  6. 我可以构建和查看使用 TeX Studio 生成的 .tex 文件。
  7. 我的 MiKTeX 控制台已更新。
  8. 我在选项中选择了“knitr”并尝试选中和取消选中大多数复选框。关闭和打开和重新启动。

我不想切换到 TinyTeX。我已经尝试了在 Rstudio 和堆栈溢出帖子中可以找到的所有建议。我看过日志文件。我注意到我不是唯一一个遇到这个问题的人,但其他人似乎都有不同的错误编号。请帮忙。

这是来自的输出sessionInfo()

R version 4.0.4 (2021-02-15)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 …
Run Code Online (Sandbox Code Playgroud)

latex r pdflatex rstudio knitr

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

unite 返回错误“没有适用于 'unite_' 的方法应用于类“c('double','numeric')”的对象

我有一个看起来像这样的数据集:

p = c(3, 4, 5, 6, 7)
q = c("fr", "", "fr", "fe", "fre")
b = c(1, "", 1, "", 1)
a = c("r", "f", "b", "m", "p")

df=data.frame(p, q, b, a)
Run Code Online (Sandbox Code Playgroud)

我想将q、b和a联合起来,并将结果放在一个新列中,所以我使用了unite:

new_df <- df %>% 
  mutate(Merged = unite(q,b,a), sep = "_")
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

UseMethod("unite_") 中的错误:
没有适用于 'unite_' 的方法应用于类 "c('double', 'numeric')"

此外,独立于上述问题,如何在代码中指定一系列列,以便我不必手动输入所有列(我想合并数十列)。我可以将q:aq 列写入a 吗?我已经用粘贴功能尝试过这种语法,但没有用。

r

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

pivot_longer 错误:无法组合不同的类?

假设我有这个 df:

df <- data.frame(a= "a", b = 1, col3 = "c", col4 = "d") %>% print()
Run Code Online (Sandbox Code Playgroud)

当我尝试使用此代码“延长”它时,

df %>% pivot_longer(1:4, names_to = "test", values_to = "test2")
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Error: Can't combine `a` <factor<127a2>> and `b` <double>.
Run Code Online (Sandbox Code Playgroud)

为什么我会得到这个?因为第一列和第一行都具有相同的值,“a”(我尝试过 names_repair 参数但没有成功)?还是因为 a 和 b 是不同的类?我不明白的是,我经常对不同类的数据进行透视,而且它总是有效。或者,是因为我试图旋转实际的标题(这确实是我需要做的)?

非常感谢任何帮助。期望的输出:

#a     a
#b     1 
#col3  c
#col4  d
Run Code Online (Sandbox Code Playgroud)

r tidyr

3
推荐指数
2
解决办法
3442
查看次数

Pandas MultiIndex 级别的自定义分组

最小可重现示例:

import pandas as pd
data = {('Percent', 'Female'): {'Parents': 26.489226869455006, 'Spouse': 31.875792141951838}, ('Percent', 'Male'): {'Parents': 34.49901768172888, 'Spouse': 20.903732809430256}, ('N', 'Female'): {'Parents': 1578.0, 'Spouse': 1578.0}, ('N', 'Male'): {'Parents': 2545.0, 'Spouse': 2545.0}, ('Count', 'Female'): {'Parents': 418.0, 'Spouse': 503.0}, ('Count', 'Male'): {'Parents': 878.0, 'Spouse': 532.0}}
df = pd.DataFrame.from_dict(data)
df
Run Code Online (Sandbox Code Playgroud)

df

                    Percent                N                Count
        Female      Male        Female  Male      Female    Male
Parents 26.489227   34.499018   1578.0  2545.0    418.0     878.0
Spouse  31.875792   20.903733   1578.0  2545.0    503.0     532.0
Run Code Online (Sandbox Code Playgroud)

我想按性别而不是统计数据对我的列进行分组,就像这个所需的输出一样:

                                   Female                             Male  
                 N     Count      Percent           N     Count …
Run Code Online (Sandbox Code Playgroud)

python indexing dataframe pandas

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

标签 统计

r ×3

dataframe ×1

indexing ×1

knitr ×1

latex ×1

pandas ×1

pdflatex ×1

python ×1

rstudio ×1

tidyr ×1