Как создать новый столбец на основе значений из нескольких столбцов, соответствующих определенной строке?

Вы можете сделать это в два этапа:

zip -d myjar.jar path/to/file/to/delete
jar uf myjar.jar -C base/path path/to/file/to/add

Вы можете игнорировать часть -C base/path, если вы уже находитесь в базовом каталоге (, содержащемpath/to/file/to/add).

При работе с JAR-файлами, а не с простыми ZIP-файлами, вы должны привыкнуть использовать jar, а не zip, насколько это возможно; он гарантирует, что манифест хранится правильно.

С помощью обычного ZIP-файла вы можете добавить или обновить файл, просто (повторно -)заархивировав его; поэтому вместо приведенной выше команды jarиспользуйте:

zip myzip.zip path/to/file/to/add

Чтобы это работало, вы должны находиться в базовом каталоге.(jarтоже подойдет, но странно требовать jarпри работе с ZIP-файлами.)

0
29.07.2019, 21:04
2 ответа

Я собираюсь снова проголосовать за короткие ответы, но вот один:

awk '{if ($0 ~ /A/) {printf 1} else {printf 0}}' datafile

Здесь вам понадобится printf, так как awk напечатает символ новой строки. Если вы хотите/нужны запятые, вы можете добавить их.

0
28.01.2020, 02:39

Дано

> df=data.frame(
+   eye_problemsdisorders_f6148_0_1=c("A","C","D",NA,"D","A","C",NA,"B","A"),
+   eye_problemsdisorders_f6148_0_2=c("B","C",NA,"A","C","B",NA,NA,"A","D"),
+   eye_problemsdisorders_f6148_0_3=c("C","A","D","D","B","A",NA,NA,"A","B"),
+   eye_problemsdisorders_f6148_0_4=c("D","D",NA,"B","A","C",NA,"C","A","B"),
+   eye_problemsdisorders_f6148_0_5=c("C","C",NA,"D","B","C",NA,"D","D","B")
+ )

, затем

> f = function(x) any(x == "A", na.rm = TRUE)
> 
> apply(df, MARGIN = 1, FUN = f)
 [1]  TRUE  TRUE FALSE  TRUE  TRUE  TRUE FALSE FALSE  TRUE  TRUE
> 

Приведение логических значений TRUE, FALSEк числовым 1, 0и добавление в качестве нового столбца:

> df$case <- as.numeric(apply(df, MARGIN = 1, FUN = f))
> 
> 
> df
   eye_problemsdisorders_f6148_0_1 eye_problemsdisorders_f6148_0_2
1                                A                               B
2                                C                               C
3                                D                            <NA>
4                             <NA>                               A
5                                D                               C
6                                A                               B
7                                C                            <NA>
8                             <NA>                            <NA>
9                                B                               A
10                               A                               D
   eye_problemsdisorders_f6148_0_3 eye_problemsdisorders_f6148_0_4
1                                C                               D
2                                A                               D
3                                D                            <NA>
4                                D                               B
5                                B                               A
6                                A                               C
7                             <NA>                            <NA>
8                             <NA>                               C
9                                A                               A
10                               B                               B
   eye_problemsdisorders_f6148_0_5 case
1                                C    1
2                                C    1
3                             <NA>    0
4                                D    1
5                                B    1
6                                C    1
7                             <NA>    0
8                                D    0
9                                D    1
10                               B    1
1
28.01.2020, 02:39

Теги

Похожие вопросы