可能不需要循环,但是使用dplyr
:它似乎可以很好地工作。
library(dplyr)
counter <- function(id, row) {
count_up <- case_when(
id != lag(id) ~ TRUE,
id == lag(id, n = 2L) & row %% 2 == 0 ~ FALSE,
id == lag(id, n = 2L) ~ TRUE,
TRUE ~ FALSE
)
n <- 1
output <- vector(mode = "integer", length = length(id))
for (i in seq_along(count_up)) {
if (count_up[i]) {
n <- n + 1
}
output[i] <- n
}
output
}
df |>
group_by(Current_Record_ID) |>
mutate(row = row_number()) |>
ungroup() |>
mutate(New_Record_ID = counter(Current_Record_ID, row)) |>
select(-row)
# A tibble: 20 × 3
Stores Current_Record_ID New_Record_ID
<dbl> <dbl> <dbl>
1 1 1 1
2 2 1 1
3 3 2 2
4 4 3 3
5 5 3 3
6 6 3 4
7 7 4 5
8 8 4 5
9 9 4 6
10 10 4 6
11 11 4 7
12 12 4 7
13 13 4 8
14 14 5 9
15 15 5 9
16 16 6 10
17 17 7 11
18 18 7 11
19 19 7 12
20 20 8 13
您需要执行此操作:
在父标签中创建一个结构,将CSS代码应用于生成多边形。
需要在需要集中元素后,
<style>
#box{ display:flex;width:100vw;height:100vh;flex-direction:row;align-items:center;justify-content:center;background:#ddd;}
#left{ height: 300px; width: 40%; background:#333;display:flex;position:absolute;left:0;clip-path: polygon(0% 0%, 100% 0, 85% 55%, 74% 100%, 0% 100%);}
#right{height: 300px; width: 40%; background:#666;display:flex;position:absolute;right:0;clip-path: polygon(25% 0, 100% 0%, 100% 100%, 0 100%, 13% 48%);}
</style>
<div id="box">
<div id="left">
</div>
<div id="right">
</div>
</div>
另一个可能的解决方案:
library(dplyr)
dta %>%
mutate(t(apply(.[-1], 1, \(x) {if (max(x, na.rm = T) == 1)
x[which.max(x):length(x)] <- 1 else x; x})) %>% as_tibble)
#> ID Q0 Q1 Q2 Q3 Q4
#> 1 A 0 0 0 0 0
#> 2 B 0 1 1 1 1
#> 3 C 0 0 1 1 1
#> 4 D 0 0 0 1 1
#> 5 E 0 NA NA NA NA
#> 6 F 0 1 1 1 1
有一个带有C ++模板的干净解决方案,而无需使用sizeof
。以下getsize()
函数返回任何静态数组的大小:
#include <cstddef>
template<typename T, std::size_t SIZE>
constexpr std::size_t getSize(T (&)[SIZE]) {
return SIZE;
}
这是一个带有 foo_t 结构的示例:
#include <cstddef>
#include <cstdio>
template<typename T, std::size_t SIZE>
constexpr std::size_t getSize(T (&)[SIZE]) {
return SIZE;
}
struct foo_t {
int ball;
};
int main()
{
foo_t foos3[] = {{1},{2},{3}};
foo_t foos5[] = {{1},{2},{3},{4},{5}};
std::printf("%u\n", getSize(foos3));
std::printf("%u\n", getSize(foos5));
}
输出:输出:
3
5
就我而言,错误是在SSL证书状态中。
我尝试了Postman的请求并收到警告,该DE SSL证书是不可能的。 “无法验证第一个证书”
更改为使用SSL正确验证并起作用的另一个域。
Permanently modify the timezone of mysql in a Docker container
Valid for mysql docker image 5.7 ~ latest
Enter the docker image that has run successfully
docker exec -it mysql bash
View the database time zone configuration:
show variables like'%time_zone';
View database time zone results:
mysql> show variables like "%time_zone";
+------------------+--------+
| Variable_name | Value |
+------------------+--------+
| system_time_zone | UTC |
| time_zone | SYSTEM |
+------------------+--------+
View the database character set configuration:
SHOW VARIABLES LIKE 'character%';
View database character set results:
mysql> SHOW VARIABLES LIKE 'character%';
+--------------------------+--------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql-8.0/charsets/ |
+--------------------------+--------------------------------+
Upgrade the apt package management tool (reason: you cannot download vim without upgrading)
apt-get update
Download vim after apt upgrade is complete
apt-get install vim
If vim modifies the docker.cnf or mysqld.cnf image file, it will take effect 。您可以修改其中任何一个。
vim /etc/mysql/conf.d/docker.cnf
OR:
vim /etc/mysql/conf.d/mysql.cnf
The default display in the file (the following are all taking docker.cnf as an example):
[mysqld]
skip-host-cache
skip-name-resolve
Add time zone configuration: Dongba District (China)
[mysqld]
default-time_zone = '+8:00'
Increase database server utf8 character set configuration
[mysqld]
character_set_server=utf8
Increase database client utf8 character set configuration
[client]
default-character-set=utf8
After the addition is completed, it will be displayed as:
[mysqld]
skip-host-cache
skip-name-resolve
default-time_zone = '+8:00'
character_set_server=utf8
[client]
default-character-set=utf8
After the configuration is saved, restart the database (valid for 5.7)
service mysql restart
**It is recommended to exit the container and restart the container directly (because you still need to start the image after restarting mysql, it is better to exit the container and restart the image directly)
docker restart mysql
Enter docker image mysql again to see if the modification is successful
Time zone view:
show variables like "%time_zone";
time zone view results:
mysql> show variables like "%time_zone";
+------------------+--------+
| Variable_name | Value |
+------------------+--------+
| system_time_zone | UTC |
| time_zone | +08:00 |
+------------------+--------+
Character set view:
SHOW VARIABLES LIKE 'character%';
Character set view result:
mysql> SHOW VARIABLES LIKE 'character%';
+--------------------------+--------------------------------+
| Variable_name | Value |
+--------------------------+--------------------------------+
| character_set_client | utf8mb3 |
| character_set_connection | utf8mb3 |
| character_set_database | utf8mb3 |
| character_set_filesystem | binary |
| character_set_results | utf8mb3 |
| character_set_server | utf8mb3 |
| character_set_system | utf8mb3 |
| character_sets_dir | /usr/share/mysql-8.0/charsets/ |
+--------------------------+--------------------------------+
1。对于其他许多人来说,这是第一个绊脚石
,我与异步电话的相遇起初令人困惑。
我不记得细节,但我可能尝试了类似的事情:
let result;
$.ajax({
url: 'https://jsonplaceholder.typicode.com/todos/1',
success: function (response) {
console.log('\nInside $.ajax:');
console.log(response);
result = response;
},
});
console.log('Finally, the result: ' + result);
.as-console-wrapper { max-height: 100% !important; top: 0; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
whops!
线的输出console.log('最后,结果:' +结果);
我认为将在另一个输出之前打印出上次。
- 并且它不包含结果:它只是打印未定义的
。 1
怎么会?
一个有用的见解,
我清楚地记得我的第一个 aha (
我遇到了同样的例外,尽管在稍微不同的上下文中,试图设置泽西服务器时,看起来您正在在泽西 - 客户的设置中遇到这一点,但我怀疑这个问题是相同的。
就我而言,我使用的是泽西服务器2.28(org.glassfish.jersey.core:jersey-server:2.28),并追踪了类:org.glassfish.jersey.jersey.model.internal.internal.internal.commonconfig 来自Jersey-Common.jar(org.glassfish.jersey.core:jersey-common)。
看着我的班级路径中的罐子,我注意到Jersey-Common-3.1.0.jar
已经进入了类路径,并相信这引起了问题。在删除了导致泽西 - 司令3.1.0被拉入班级路径的违法依赖之后,例外消失了。
我怀疑您正在使用泽西 - 客户版本:2.x,但在class path中有一个泽西 - 塞米式3.x罐子
您可以这样使用:
这就是错误来自新版本0.69.0和最后一个版本,您可以使用 npx React-nib init projectName -version 0.68.2 。
完成设置后,然后升级为v 0.69。
解决了。
原来是log4shell工作,您需要一个脆弱的应用程序和易受伤害的Java版本;我以为我有,但是不。我有Java 11.0.15,并且需要Java 11(Ghidra需要Java 11的最小值,仅Java 11的弱势版本是第一个)。
下载并安装了Java 11,POC工作完美。
从文档看来,您应该这样使用它:
shouldDisableYear={(year) => singleYearsArray.includes(year)}
这将告诉选择器每年禁用单年列表中的每年。
请记住,作为回调中输入参数的“年”类型必须与列表中的年度类型相同。
首先,我会将您的日期列和to_be_paid_date
转换为dateTime,这样
df["to_be_paid_date"] = pd.to_datetime(df["to_be_paid_date"], format="%d-%m-%Y")
mortgage_amount_paid_date = datetime.strptime(mortgage_amount_paid_date,"%d-%m-%Y")
我就会用iterrows()
在每一行上迭代,然后将to_be_be_paid_date
与Mortgage_amount_paid_date
并从Mortgage_amount_paid
中扣除您的Mortgage_Amount
值,直到它达到零为止。
这是演员和转换的示例:
Here is an example of a cast and a convert:
使用类型对象或字符串类型铸造