SAS 传输格式是一种开放格式,这是向 FDA 提交数据所必需的。
用法
read_xpt(
file,
col_select = NULL,
skip = 0,
n_max = Inf,
.name_repair = "unique"
)
write_xpt(
data,
path,
version = 8,
name = NULL,
label = attr(data, "label"),
adjust_tz = TRUE
)
参数
- file
-
文件路径、连接或文字数据(单个字符串或原始向量)。
以
.gz
、.bz2
、.xz
或.zip
结尾的文件将自动解压缩。将自动下载以http://
、https://
、ftp://
或ftps://
开头的文件。远程gz文件也可以自动下载并解压。文字数据对于示例和测试最有用。要被识别为文字数据,输入必须用
I()
包装,是包含至少一个换行符的字符串,或者是至少包含一个带有换行符的字符串的向量。使用值
clipboard()
将从系统剪贴板读取。 - col_select
-
一个或多个选择表达式,例如
dplyr::select()
。使用c()
或list()
来使用多个表达式。有关可用选择选项的详细信息,请参阅?dplyr::select
。仅从data_file
读取指定的列。 - skip
-
读取数据之前要跳过的行数。
- n_max
-
读取的最大行数。
- .name_repair
-
有问题的列名的处理:
-
"minimal"
:没有名称修复或检查,超出基本存在, -
"unique"
:确保名称唯一且不为空, -
"check_unique"
:(默认值),没有名称修复,但检查它们是unique
, -
"universal"
:命名为unique
和语法 -
函数:应用自定义名称修复(例如,
.name_repair = make.names
用于基本 R 样式的名称)。 -
purrr-style 匿名函数,请参阅
rlang::as_function()
此参数作为
repair
传递到vctrs::vec_as_names()
。有关这些条款以及用于执行这些条款的策略的更多详细信息,请参阅此处。 -
- data
-
要写入的数据帧。
- path
-
将写入数据的文件的路径。
- version
-
要使用的传输文件规范的版本:5 或 8。
- name
-
要记录在文件中的成员姓名。默认为不带扩展名的文件名。对于版本 5,必须 <= 8 个字符;对于版本 8,必须 <= 32 个字符。
- label
-
要使用的数据集标签,或
NULL
。默认为data
的 "label" 属性中存储的值。请注意,虽然 SAS 本身支持最长 256 个字符的数据集标签,但 SAS 传输文件中的数据集标签必须 <= 40 个字符。
- adjust_tz
-
Stata、SPSS 和 SAS 没有时区概念,所有 date-time 变量均被视为 UTC。
adjust_tz
控制写入时如何处理日期时间值的时区。-
如果
TRUE
(默认),则忽略日期时间值的时区,并且它们将在 R 和 Stata/SPSS/SAS 中显示相同的内容,例如"2010-01-01 09:00:00 NZDT"
将写为"2010-01-01 09:00:00"
。请注意,这会更改基础数值数据,因此如果保留 between-time-point 差异至关重要,请务必小心。 -
如果
FALSE
,日期时间值将写入相应的 UTC 值,例如"2010-01-01 09:00:00 NZDT"
将写为"2009-12-31 20:00:00"
。
-
值
一个 tibble DataFrame 变体,具有很好的默认值。
变量标签存储在每个变量的"label"属性中。它不会打印在控制台上,但 RStudio 查看器会显示它。
如果定义了数据集标签,它将存储在 tibble 的 "label" 属性中。
write_xpt()
以不可见方式返回输入data
。
例子
tmp <- tempfile(fileext = ".xpt")
write_xpt(mtcars, tmp)
read_xpt(tmp)
#> # A tibble: 32 × 11
#> mpg cyl disp hp drat wt qsec vs am gear carb
#> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 21 6 160 110 3.9 2.62 16.5 0 1 4 4
#> 2 21 6 160 110 3.9 2.88 17.0 0 1 4 4
#> 3 22.8 4 108 93 3.85 2.32 18.6 1 1 4 1
#> 4 21.4 6 258 110 3.08 3.22 19.4 1 0 3 1
#> 5 18.7 8 360 175 3.15 3.44 17.0 0 0 3 2
#> 6 18.1 6 225 105 2.76 3.46 20.2 1 0 3 1
#> 7 14.3 8 360 245 3.21 3.57 15.8 0 0 3 4
#> 8 24.4 4 147. 62 3.69 3.19 20 1 0 4 2
#> 9 22.8 4 141. 95 3.92 3.15 22.9 1 0 4 2
#> 10 19.2 6 168. 123 3.92 3.44 18.3 1 0 4 4
#> # ℹ 22 more rows
相关用法
- R haven read_sas 读取 SAS 文件
- R haven read_dta 读写Stata DTA文件
- R haven read_spss 读取和写入 SPSS 文件
- R haven zap_missing 将特殊缺失修改为常规 R 缺失
- R haven print_labels 打印带标签向量的标签
- R haven tagged_na “标记”缺失值
- R haven zap_label Zap 变量标签
- R haven labelled 创建一个标记向量。
- R haven as_factor 将标记向量转换为因子
- R haven zap_empty 将空字符串转换为缺失值
- R haven labelled_spss SPSS 的标记向量
- R haven zap_labels Zap值标签
- R SparkR hashCode用法及代码示例
- R hms hms 用于存储一天中的时间值的简单类
- R SparkR hint用法及代码示例
- R hms parse_hms 解析 hms 值
- R SparkR histogram用法及代码示例
- R SparkR head用法及代码示例
- R hms round_hms 四舍五入或截断为秒的倍数
- R dtrMatrix-class 三角形稠密数值矩阵
- R vcov.gam 从 GAM 拟合中提取参数(估计器)协方差矩阵
- R gam.check 拟合 gam 模型的一些诊断
- R ggplot2 annotation_logticks 注释:记录刻度线
- R matrix转list用法及代码示例
- R Pixel X 射线像素强度随时间的变化
注:本文由纯净天空筛选整理自Hadley Wickham等大神的英文原创作品 Read and write SAS transport files。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。