Как создать пробелы для определенных записей в кадре данных в R? - PullRequest
0 голосов
/ 01 марта 2019

Предположим, у меня есть фрейм данных:

df <- data.frame(A = c(17.1, 0.0, 0.0, 0.0),
                 B = c(22.2, 0.0, 0.0, 0.0), 
                 C = c(2.4, 5.5, 1.8, 3.3))

     A    B   C
1 17.1 22.2 2.4
2  0.0  0.0 5.5
3  0.0  0.0 1.8
4  0.0  0.0 3.3

Для просмотра с помощью View () я хочу иметь пустые записи для строк 2-4, где у меня есть 0,0 элементов.Вот желаемый результат:

     A    B   C
1 17.1 22.2 2.4
2           5.5
3           1.8
4           3.3

Один из способов сделать это - превратить столбцы df в символы и установить для символов «0.0» значение «».В идеале, я бы хотел, чтобы ненулевые элементы оставались числовыми, если это возможно.Есть лучший способ сделать это?

1 Ответ

0 голосов
/ 01 марта 2019

Вы можете печатать, используя параметр zero.print в функции format для печати фрейма данных.

print(format(df, zero.print=""))

     A    B   C
1 17.1 22.2 2.4
2           5.5
3           1.8
4           3.3

Другой вариант - использование функции kable из пакета knitr.

knitr::kable(df, format.args= list(zero.print = ""))


|    A|    B|   C|
|----:|----:|---:|
| 17.1| 22.2| 2.4|
|     |     | 5.5|
|     |     | 1.8|
|     |     | 3.3|
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...