I am not able to figure it out. I tried to google it, but I didn't get it.
That seems to be a normal feature of data frames read with readr::read_csv() and possibly other functions. You can get a data frame showing the detected read problems, if any, with the problems() function. Here is an example of reading in a csv file with no problems.
DF <- readr::read_csv("Dummy2.csv", )
Rows: 15 Columns: 2
── Column specification ──────────────────────────────────────────────────────
Delimiter: ","
chr (2): Name1, Name2
ℹ Use `spec()` to retrieve the full column specification for this data.
ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
str(DF)
spec_tbl_df [15 × 2] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
$ Name1: chr [1:15] "rugby" "soccer" "basquet" "voley" ...
$ Name2: chr [1:15] "sport1" "sport2" "sport1" "sport2" ...
- attr(*, "spec")=
.. cols(
.. Name1 = col_character(),
.. Name2 = col_character()
.. )
- attr(*, "problems")=<externalptr>
readr::problems(DF)
# A tibble: 0 × 5
# … with 5 variables: row <int>, col <int>, expected <chr>, actual <chr>,
# file <chr>
# ℹ Use `colnames()` to see all variable names
It's plumbing.
R
generally holds everything in memory, but sometimes things don't fit. In that case, the externalptr
attribute is set, which is a pointer object to a large binary object residing out of RAM somewhere. Like any other object in R
(where everything is an object) it has properties. In this case it includes the attrPreformatted text
ibute problems
that was set on the return from str(df1)
possibly because df1
is a large object, already in memory, and another copy was made for the benefit of str()
. Think of it like instructions to a courier driver to pick up a package from an address; the driver doesn't know what will be in the package.
The specific problem may have something to do with the class
of df1
, specifically its spec_tbl_df
subclass. The following hocus pocus might work
class(df1) <- c("tbl_df", "tbl", "data.frame")
If you are reading this in from csv, go back and use read.csv
in preference to readr::read_csv
if that's what you did. That will avoid creating a tibble, giving just a data frame and will eliminate spc_tbl_df
as a potential root cause of the problem. Ordinary users aren't supposed to know this kind of stuff.
I really appreciate your pure intention of sharing knowledge with me. Thank you so much.
Thank Q for the input and for sharing your knowledge with me.
This topic was automatically closed 21 days after the last reply. New replies are no longer allowed.
If you have a query related to it or one of the replies, start a new topic and refer back with a link.