fwrite can't print "%" or deal "%a" correctly in stdout

Open
#3,482 6 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
38/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Stale
Tech stack
r
Domain
data

Research direction

Start by running the two reported examples through fwrite and tracing how their string values are handled during output. Confirm the expected behavior from the examples: percent signs should be written literally, and "%a" should not be converted to a hexadecimal floating-point value.

Written by the indexing model from the issue text.

Description

fwrite

# Minimal reproducible example

Example 1:

a <- c("%", "10")
data.table::fwrite(as.data.frame(a))

just print "a" in the screen, and

Warning message:
In data.table::fwrite(as.data.frame(a)) :
   printing of extremely long output is truncated

Example 2:

a <- c("%a", "10")
data.table::fwrite(as.data.frame(a))

which produce

a
0x1.7098b6636p-1033
10

# Output of sessionInfo()

R version 3.5.3 (2019-03-11)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 15063)

Matrix products: default

locale:
[1] LC_COLLATE=Chinese (Simplified)_China.936
[2] LC_CTYPE=Chinese (Simplified)_China.936
[3] LC_MONETARY=Chinese (Simplified)_China.936
[4] LC_NUMERIC=C
[5] LC_TIME=English_United States.1252

attached base packages:
[1] stats graphics grDevices utils datasets methods base

other attached packages:
[1] data.table_1.12.0

loaded via a namespace (and not attached):
[1] shiny_1.2.0 compiler_3.5.3 magrittr_1.5 R6_2.4.0
[5] promises_1.0.1 later_0.8.0 tools_3.5.3 htmltools_0.3.6
[9] Rcpp_1.0.1 viewenhance_0.1.0 digest_0.6.18 xtable_1.8-3
[13] httpuv_1.5.0 mime_0.6 miniUI_0.1.1.1

Dominant language
R
Stars
3.9k
Forks
1.1k
Avg merge
14h 4m
Merged PRs (30d)
4

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Rdatatable/data.table

All issues in Rdatatable/data.table

Similar issues

More R issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.