-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error when trying to output rtf file with missing fields #146
Comments
please provide reproducible examples with a dummy dataset following https://reprex.tidyverse.org/index.html |
r2rtf package version is 1.01 structure(list(subjid = c("R001", "R001", "R001", "R001"), dosegrp.factor = structure(c(1L,
1L, 1L, 1L), levels = "Active Control Group", class = "factor"),
visit = structure(c(1L, 1L, 1L, 1L), levels = "Screening", class = "factor"),
pecat = c("Complete", "Complete", "Complete", "Complete"),
pedat = structure(c(19278, 19278, 19278, 19278), class = "Date"),
petim = c("12:19", "12:19", "12:19", "12:19"), date_diff_ca = c(-14,
-14, -14, -14), petest_updated = c("Abdomen", "Chest", "Head / Neck / Ears / Eyes / Nose / Mouth / Throat",
"Heart / Circulation"), peorres = structure(c(1L, 1L, 1L,
1L), levels = "Normal", class = "factor"), pedesc = c(NA_character_,
NA_character_, NA_character_, NA_character_)), row.names = c(NA,
-4L), class = c("tbl_df", "tbl", "data.frame"))
#> subjid dosegrp.factor visit pecat pedat petim date_diff_ca
#> 1 R001 Active Control Group Screening Complete 2022-10-13 12:19 -14
#> 2 R001 Active Control Group Screening Complete 2022-10-13 12:19 -14
#> 3 R001 Active Control Group Screening Complete 2022-10-13 12:19 -14
#> 4 R001 Active Control Group Screening Complete 2022-10-13 12:19 -14
#> petest_updated peorres pedesc
#> 1 Abdomen Normal <NA>
#> 2 Chest Normal <NA>
#> 3 Head / Neck / Ears / Eyes / Nose / Mouth / Throat Normal <NA>
#> 4 Heart / Circulation Normal <NA> Created on 2023-03-15 with reprex v2.0.2 listing31_rtf <- PE_Data %>%
rtf_page(
orientation = "landscape"
) %>%
rtf_page_header(
text = c(paste0(PageHeader1), paste0(PageHeader2), paste0(PageHeader3)),
text_justification = c("r", "l", "l"),
text_font = 9, # Courier New
text_font_size = 8
) %>%
rtf_page_footer(
text = c("Notes: Day relative to Challenge agent is the number of days relative to day of administration of the challenge agent, where day of administration = 0.",
"",
paste0("Printed: ", CurrentDate, " (", TFLVersion, ")")),
text_font = 9, # Courier New
text_justification = "l",
text_font_size = 8
) %>%
rtf_title("Listing 31", "Physical Examination",
text_font = 9, # Courier New
text_font_size = 8
) %>%
rtf_colheader("Subject Number | Treatment Group | Visit | Type of Examination | Date of Exam | Time of Exam | Day Relative to Challenge Agent | Anatomical Site | Result | Description of Abnormality",
col_rel_width = c(1,1,1,1,1,1,1,1.5,1,1.5),
text_font = 9, # Courier New
text_justification = "c",
text_font_size = 8,
text_format = "b"
) %>%
rtf_body(
group_by = c("subjid", "dosegrp.factor", "visit", "pecat", "pedat", "petim", "date_diff_ca"),
col_rel_width = c(1,1,1,1,1,1,1,1.5,1,1.5),
text_font = 9, # Courier New
text_justification = "c",
text_font_size = 8,
border_top = "single"
)
#> Error in PE_Data %>% rtf_page(orientation = "landscape") %>% rtf_page_header(text = c(paste0(PageHeader1), : could not find function "%>%"
# Output .rtf file
listing31_rtf %>%
rtf_encode() %>%
write_rtf(file = "31_Listings_Physical_Examination.rtf")
#> Error in listing31_rtf %>% rtf_encode() %>% write_rtf(file = "31_Listings_Physical_Examination.rtf"): could not find function "%>%" Created on 2023-03-15 with reprex v2.0.2 I hope this is all you need but let me know if you need anything else! I am pretty new to R and self-learning, so hope you can bear with me! |
Thanks! The error messages from the code is not the same as your original post. Could you load all proper packages and rerun the code? So we are able to see the exact errors message. |
I am not sure why "Could not find function "%>%" error messages get created when I run the reprex function. I think this has something to do with the reprex function and you can probably ignore these. The error messages I get when running the rtf_encode() and write_rtf() is this: |
I can reproduce the error now. The error message basically means you need to load the R package To reproduce the error, we need to add additional code before execute your code.
|
Here is the ad-hoc way to solve the bug. With r2rtf v1.0.1, replace all missing values to an empty string using code below before you execute all other code.
I also fixed the bug in the PR #147 , but I need to submit a newer package version to CRAN before the bug disappear from your end. Otherwise, you need to use development version of the package. |
Yes, this worked! Thanks for your help. |
Hi there!
I have defined a table format for the attached dataframe and now trying to output into rtf file, however I am getting the below error message. I am thinking that possibly the issue is because I have missing values in the "pedesc" col. What can I do to prevent this from happening?
Error in if (nc[currentIndex] == 0L) upperBlockIndex <- c(upperBlockIndex, :
missing value where TRUE/FALSE needed
The text was updated successfully, but these errors were encountered: