在使用列名而不是列索引加载数据集时如何定义变量类型?

卢卡斯

当我需要加载必须将某些特定列读取为字符串的数据集时,我输入:

import delimited "data.csv", stringcols(13 15 16)

其中13、15和16是我想读取为字符串的数据集中的列数。但是,我通常不事先知道这些列的编号,因此能够使用这些列的名称执行相同的操作会很好。

我试过了:

import delimited "data.csv", stringcols(var1 var2 var3)

stringcols不接受非数字参数。有没有一种方法可以使用列名而不是数字来指定列类型?

在python中,我可以使用:

df=pd.read_csv("data.csv", dtype={k:str for k in ["var1", 'var2', 'var3']})

我正在Stata寻找类似的方法。

Lu Han

我实际上经常遇到这个问题。正如尼克所说,当前版本import delimited不支持变量名。

一种解决方法是通过指定stringcols(_all)选项将所有列导入为字符串,然后手动转换感兴趣的那些变量。

例如,

import delimited data.csv, stringcols(_all) clear
destring var4 var5 var6, replace

如果您有很长的变量列表,并且想要destring除say以外的所有变量var1 var2 var3,则可以使用ds命令(感谢Nick的建议):

import delimited data.csv, stringcols(_all) clear
ds var1 var2 var3, not //specify a list of variables to be excluded 
destring `r(varlist)', replace 

如果您使用大量非结构化Excel文件,则可能会发现excelclean命令很有用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在 polars 中加载数据帧时如何定义列类型?

在 SQL Developer 中使用 DESCRIBE 获取列的数据类型列表时如何按列名排序?

加载Tensorflow数据集时,“元组索引必须是整数或切片,而不是str”

如何在点击时使用jQuery动态加载WordPress自定义帖子类型数据?

如何让 CType/DirectCast 使用定义的变量而不是直接类型?

使用rbindlist时如何按数据集添加索引?

在编译时使用类型时从自定义位置加载程序集

dplyr:如何使用mutate通过列索引而不是列名来引用列?

如何使用列表索引返回数据列而不是行?

如何使用损坏的列加载CSV数据集?

当修改依赖于索引时,如何使用镜头修改嵌套自定义数据类型的字段

当变量空间分隔列时,在python(numpy)中加载数据集

熊猫使用列索引位置而不是列名来融化函数

如何使用dplyr通过2个列集将内部联接的列名作为变量传递

使用从变量中选择的列名逐行索引数据帧

在Surprise中从预定义的折叠中加载数据时,如何构建完整的训练集?

使用列名和数据类型加载 Pandas 表

如何在使用列时修改列数据类型

如何使用列变量作为列名

如何使用python加载keras的数据集

如何使用数据集的列

通过列索引而不是列名来调用数据框中的列-Pandas

如何使用定义持续时间的两个日期时间变量重新索引数据帧

当由类型化数据集填充时,DataGridView列如何命名?

当列没有通用类型时,如何延长数据集的时间

如何加载自定义数据集以馈送到CNN?

如何定义不像类型那样使用的变量?

使用PyTorch加载图像的自定义数据集

按年份列表的国家/地区数据集 - 当年份不是变量时如何按国家和年份合并