我需要在should be used this code.
$dir = getcwd() . '/var/uploads/pages/';
$pageName = $dir . $_POST['pageName'];
if(mkdir($pageName, 0777, true)){
$filepathHTML = $pageName.basename($_FILES['pageHTMLUpload'['name']]);
$filepathPHP = $pageName.basename($_FILES['pagePHPUpload']['name']);
if(move_uploaded_file($_FILES['pageHTMLUpload']['tmp_name'], $filepathHTML))
{
if(move_uploaded_file($_FILES['pagePHPUpload']['tmp_name'], $filepathPHP ))
{
$stmt = $conn->prepare("INSERT INTO pages (title, htmlDir, phpDir) VALUES (?,?,?)");
$stmt->bind_param($pageName, $filepathHTML, $filepathPHP);
$stmt->execute();
}
else{
echo "Error -phpUpload";
}
}
else{
echo "Error -htmlUpload";
}
}
else{
echo "Error -pagename";
}
函数之后先计算行数,如果行号<1,则将新行添加到6行。 6.
我的df有三个变量(group_by
):v1,v2,v3
,v1 = group name
(即1,2,3,4,5,6)。在新行中,我想重复v2 = row number
值,v1
继续广告行号,v2
示例df
v3 = NA
预期产出
v1 v2 v3
1 1 79
1 2 32
1 3 53
1 4 33
1 5 76
1 6 11
2 1 32
2 2 42
2 3 44
2 4 12
3 1 22
3 2 12
3 3 12
3 4 67
3 5 32
我尝试先按v1 v2 v3
1 1 79
1 2 32
1 3 53
1 4 33
1 5 76
1 6 11
2 1 32
2 2 42
2 3 44
2 4 12
2 5 NA #insert
2 6 NA #insert
3 1 22
3 2 12
3 3 12
3 4 67
3 5 32
3 6 NA #insert
计算行号,但我不知道是否可以或如何使用pip添加此dplyr
条件。或者还有其他更容易的功能吗?
我的代码
if else
谢谢!
答案 0 :(得分:2)
我们可以使用complete
library(tidyverse)
complete(df1, v1, v2)
# A tibble: 18 x 3
# v1 v2 v3
# <int> <int> <int>
# 1 1 1 79
# 2 1 2 32
# 3 1 3 53
# 4 1 4 33
# 5 1 5 76
# 6 1 6 11
# 7 2 1 32
# 8 2 2 42
# 9 2 3 44
#10 2 4 12
#11 2 5 NA
#12 2 6 NA
#13 3 1 22
#14 3 2 12
#15 3 3 12
#16 3 4 67
#17 3 5 32
#18 3 6 NA
答案 1 :(得分:1)
以下是使用merge
进行此操作的方法。
df <- read.table(text =
"v1 v2 v3
1 1 79
1 2 32
1 3 53
1 4 33
1 5 76
1 6 11
2 1 32
2 2 42
2 3 44
2 4 12
3 1 22
3 2 12
3 3 12
3 4 67
3 5 32", header = T)
toMerge <- data.frame(v1 = rep(1:3, each = 6), v2 = rep(1:6, times = 3))
m <- merge(toMerge, df, by = c("v1", "v2"), all.x = T)
m
v1 v2 v3
1 1 1 79
2 1 2 32
3 1 3 53
4 1 4 33
5 1 5 76
6 1 6 11
7 2 1 32
8 2 2 42
9 2 3 44
10 2 4 12
11 2 5 NA
12 2 6 NA
13 3 1 22
14 3 2 12
15 3 3 12
16 3 4 67
17 3 5 32
18 3 6 NA