164 lines
2.8 KiB
Plaintext
Raw Normal View History

2025-01-12 00:52:51 +08:00
R Under development (unstable) (2013-07-06 r63202) -- "Unsuffered Consequences"
Copyright (C) 2013 The R Foundation for Statistical Computing
Platform: x86_64-apple-darwin12.4.0 (64-bit)
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
> ## regression test for PR#15346
>
> library(foreign)
>
> ## The testEmpty.xpt dataset was created using the following code:
> ## library(SASxport)
> ## data(iris)
> ## write.xport(Iris1=iris[1:2,], # two row dataset
> ## empty=data.frame(), # empty dataset
> ## Iris2=iris[3:4,], # two row dataset
> ## file="testEmpty.xpt",
> ## autogen.formats=FALSE # prevent autocreation of FORMATS dataset
> ## )
>
> ## Test that lookup.xport retrieves all three datsets
> empty.f <- lookup.xport(file="testEmpty.xpt")
> empty.f
$IRIS1
$IRIS1$headpad
[1] 1200
$IRIS1$type
[1] "numeric" "numeric" "numeric" "numeric" "character"
$IRIS1$width
[1] 8 8 8 8 8
$IRIS1$index
[1] 1 2 3 4 5
$IRIS1$position
[1] 0 8 16 24 32
$IRIS1$name
[1] "SEPAL_LE" "SEPAL_WI" "PETAL_LE" "PETAL_WI" "SPECIES"
$IRIS1$label
[1] "" "" "" "" ""
$IRIS1$format
[1] "" "" "" "" ""
$IRIS1$sexptype
[1] 14 14 14 14 16
$IRIS1$tailpad
[1] 0
$IRIS1$length
[1] 2
$EMPTY
$EMPTY$headpad
[1] 480
$EMPTY$type
character(0)
$EMPTY$width
integer(0)
$EMPTY$index
integer(0)
$EMPTY$position
integer(0)
$EMPTY$name
character(0)
$EMPTY$label
character(0)
$EMPTY$format
character(0)
$EMPTY$sexptype
integer(0)
$EMPTY$tailpad
[1] 0
$EMPTY$length
[1] 0
$IRIS2
$IRIS2$headpad
[1] 1200
$IRIS2$type
[1] "numeric" "numeric" "numeric" "numeric" "character"
$IRIS2$width
[1] 8 8 8 8 8
$IRIS2$index
[1] 1 2 3 4 5
$IRIS2$position
[1] 0 8 16 24 32
$IRIS2$name
[1] "SEPAL_LE" "SEPAL_WI" "PETAL_LE" "PETAL_WI" "SPECIES"
$IRIS2$label
[1] "" "" "" "" ""
$IRIS2$format
[1] "" "" "" "" ""
$IRIS2$sexptype
[1] 14 14 14 14 16
$IRIS2$tailpad
[1] 0
$IRIS2$length
[1] 2
> stopifnot(length(empty.f) == 3L)
>
>
> dat.f <- read.xport(file="testEmpty.xpt")
> dat.f
$IRIS1
SEPAL_LE SEPAL_WI PETAL_LE PETAL_WI SPECIES
1 5.1 3.5 1.4 0.2 setosa
2 4.9 3.0 1.4 0.2 setosa
$EMPTY
data frame with 0 columns and 0 rows
$IRIS2
SEPAL_LE SEPAL_WI PETAL_LE PETAL_WI SPECIES
1 4.7 3.2 1.3 0.2 setosa
2 4.6 3.1 1.5 0.2 setosa
> stopifnot(length(dat.f)==3)
>
>
> proc.time()
user system elapsed
0.220 0.027 0.231