我有一个看起来像这样的数据框:
| id | length_bgn | length_end |
--------------------------------
| 1 | 209 | 215 |
| 2 | 324 | 125 |
| 3 | 167 | 156 |
| .. | ... | ... |
--------------------------------
Run Code Online (Sandbox Code Playgroud)
我想制作一个散点图,其中 X 轴上的长度(每行)的最小值和 Y 轴上的每行的最大值。我努力了:
qplot(min(length_bgn, length_end), max(length_bgn, length_end), data=df)
Run Code Online (Sandbox Code Playgroud)
然而,这将绘制两列的最小值与两列的最大值的单个点。我使用了错误的功能吗?或者以某种方式操纵数据框会更好吗?请原谅我的天真,我对 R 和 ggplot2 还很陌生。
任何帮助将非常感激。
编辑:使用上述代码的示例图:
我需要为"在R中查找和替换"编写一个通用函数.如何编写采用以下输入的函数
并重写CSV文件/数据框,以便用替换字符串替换所有找到的字符串?
我试图将行追加到R df.这是df foo的一个例子:
A B C D
1 1 1 200
1 1 2 50
1 1 3 15
1 2 1 150
1 2 4 50
1 3 1 300
2 1 2 40
2 1 4 90
2 3 2 80
Run Code Online (Sandbox Code Playgroud)
对于每个A,有3个可能的B值,并且对于每个B,有4个可能的C值.但是,初始df仅包含D的非零值.我想操纵df使得零对于B和C都包括在内.因此,对于任何0的B/C值,df将在D中显示0.我已经看到用一列来解决这个问题的问题,但找不到用多个问题解决它的问题列.最终的df看起来像这样:
A B C D
1 1 1 200
1 1 2 50
1 1 3 15
1 1 4 0
1 2 1 150
1 2 2 0
1 2 3 0
1 2 4 50 …
Run Code Online (Sandbox Code Playgroud) 我有两个相同维度的矩阵,用NA和字符串填充.例如,
structure(c("Y1", "Y1", "Y1", NA, NA, NA, NA, NA, NA, NA, NA,
NA, "Y1", "Y1", "Y1", "Y2", NA, "Y2", NA, NA, NA, NA, NA, NA,
"Y1", "Y1", "Y1", "Y2", NA, "Y2", NA, NA, NA, NA, NA, NA, NA,
NA, NA, "Y2", NA, "Y2", NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, "Y2", NA, "Y2", NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, …
Run Code Online (Sandbox Code Playgroud) 我有一个数据框A,其中一列名为"states".各州以其全名记录,例如."加利福尼亚".每个州都有多行.
我有一个数据框B,它有每个州的枪死数.状态以缩写记录,例如."CA"
我想要的是:我希望A中的每一行都有相应状态的枪死数.我打算为此使用dplyr :: inner_join().
但当然,问题在于不同数据框中的状态名称是不同的.
使名称匹配的最佳方法是什么?
我在R工作,我有一个有趣的问题。我想转换下一个数据帧:
DF = data.frame(ID = c(1, 2, 3),
Person1 = c("Devin Davey", "Rui Butt", "Keon Dotson"),
Sign = "artist",
Person2 = c("Eli Greer", "Alvin Simons", "Leona Ford"),
Sex = c("female", "male", "female"),
Score = c(10, 20, 30))
ID Person1 Sign Person2 Sex Score
1 1 Devin Davey artist Eli Greer female 10
2 2 Rui Butt artist Alvin Simons male 20
3 3 Keon Dotson artist Leona Ford female 30
Run Code Online (Sandbox Code Playgroud)
像这样格式化:
ID Name Sign Score
1 1 Devin …
Run Code Online (Sandbox Code Playgroud) 如何将数据集中的所有值更改为 NA 或 0,同时保留所有列名,理想情况下,保留相同的数据结构。
我有这个文件 txt 有这三个数字“4.151120 4.100 7.9999”。我应该创建一个程序来读取它并对其进行一些进一步的操作。但我不能
int main (int argc, char *argv[]){
FILE *arq;
arq = fopen("values.txt","r");
float num1, num2, num3;
fscanf(arq,"%.6f %.6f %.6f", &num1, &num2, &num3);
printf("%.6f %.6f %.6f", num1, num2, num3);
fclose(arq);
return 0;
Run Code Online (Sandbox Code Playgroud) 以下是包含 tibbels 的列表:
test=list()
l <- list(list(var = "bb",b = 2, c = 3, d = 5), list(var = "a", b = 3, c = 2, d = 4))
l2 <- map(l,~data.frame(.))
l3 <-map_dfr(l2,~mutate_all(.,as.character))
l4<-as_tibble(l3)
test[[1]]=l4
names(test)[1]="par"
test[[2]]=l4
names(test)[2]="mas"
myli=list()
myli[[1]]=l4
names(myli)[1]="par"
myli[[2]]=l4
names(myli)[2]="mas"
Run Code Online (Sandbox Code Playgroud)
我想提取名称、var 和 d 并组合:
我需要的输出是这样的:
var value list name
bb 5 test par
a 4 test par
bb 5 test mas
a 4 test mas
bb 5 myli par
a 4 myli par
bb 5 myli …
Run Code Online (Sandbox Code Playgroud) 我目前在操作/聚合我的数据框时遇到问题。我当前的数据框如下:
农场 | 年 | 奶牛 | 鸭子 | 鸡 | 羊 | 马 |
---|---|---|---|---|---|---|
农场 1 | 2020年 | 22 | 12 | 100 | 30 | 25 |
农场 1 | 2020年 | 0 | 12 | 120 | 20 | 20 |
农场 1 | 2019年 | 16 | 6 | 80 | 10 | 16 |
农场 1 | 2019年 | 12 | 0 | 50 | 0 | 11 |
农场 1 | 2018年 | 8 | 0 | 0 | 16 | 0 |
农场 1 | 2018年 | 0 | 0 | 10 | 13 | 12 |
农场2 | 2020年 | 31 | 28 | 27 | 10 | 14 |
农场2 | 2020年 | 0 | 13 | 31 | 20 | 0 |
农场2 | 2019年 | 3 | 31 | 0 | 20 | 43 |
农场2 | 2019年 | 20 … |
我正在使用 R 编程语言。
我有以下数据集:
factor_1 <- c("A", "B", "C", "D", "E")
factor_2 <- c("AA", "BB", "CC", "DD", "EE")
factor_3 <- c("AAA", "BBB", "CCC", "DDD", "EEE")
var_1 <- as.factor(sample(factor_1, 10000, replace=TRUE, prob=c(0.2, 0.2, 0.2, 0.2, 0.2)))
var_2 <- as.factor(sample(factor_2, 10000, replace=TRUE, prob=c(0.2, 0.2, 0.2, 0.2, 0.2)))
var_3 <- as.factor(sample(factor_3, 10000, replace=TRUE, prob=c(0.2, 0.2, 0.2, 0.2, 0.2)))
var_4 <- rnorm(1000,10,10)
var_5 <- rnorm(1000,10,10)
my_data = data.frame(var_1, var_2, var_3, var_4, var_5)
var_1 var_2 var_3 var_4 var_5
1 B AA EEE 13.645347 13.058532
2 …
Run Code Online (Sandbox Code Playgroud) 我正在处理一个有 2000 行的数据框,但为此目的,我创建了这个简单的数据框,我想在其中查找 col2 列中包含 3 个或更少数字的所有行。这是数据框:
\nd = {'col1': [10000, 2000,300,4000,50000], 'col2': [10, 20000, 300, 4000, 100]}\ndf = pd.DataFrame(data=d)\n\n col1 col2\n0 10000 10\n1 2000 20000\n2 300 300\n3 4000 4000\n4 50000 100\n\nArea int64\nPrice int64\ndtype: object\n
Run Code Online (Sandbox Code Playgroud)\n之后,我想创建一个新列 col3,其中来自那些过滤行(具有 3 个或更少数字)的 col2 列的值将乘以它们的值 \xe2\x80\x8b\xe2\x80\x8b 来自 col1 列,而其他行保持不变。
\n这是预期的输出:
\n col1 col2 col3\n0 10000 10 100000\n1 2000 20000 20000\n2 300 300 90000\n3 4000 4000 4000\n4 5000 100 500000\n\ncol1 int64\ncol2 int64\ncol3 int64\ndtype: object\n
Run Code Online (Sandbox Code Playgroud)\n提前致谢!
\n我需要删除文件中匹配的特定模式和匹配的行之间的行。
在下面的代码中,我要删除对象Host“ kali” {中的行到下一次出现的}(而不是最后一次出现的})。并在删除后删除空白区域。
object Host "linux" {
import "windows"
address = "linux"
groups = ["linux"]
}
object Host "kali" {
import "linux"
address = "linux"
groups = [linux ]
}
object Host "windows" {
import "linux"
address = "linux"
groups = ["windows" ]
}
Run Code Online (Sandbox Code Playgroud)
这是我的代码
clear
echo -e "Enter the host to delete in config file"
cat > deletionfile.txt
clear
while read host
do
loc=`grep -il 'object.*Host.*"$host"' /home/afrith/config-file/*.conf`
sed -i "/^object.*Host.*\"$host\".*{$/,/^}$/d" $loc
done < deletionfile.txt …
Run Code Online (Sandbox Code Playgroud)