码迷,mamicode.com
首页 > 其他好文 > 详细

原本的变量名处在变量值的位置,如何重新提取变量名

时间:2020-06-09 22:10:03      阅读:85      评论:0      收藏:0      [点我收藏+]

标签:imp   选项   list   using   必须   com   env   导入   输出内容   

源地址:首行数据 如何快速转为 变量名 ?

在日常工作中,我们导入的数据常常不那么规范,如下图所示,原本的变量名处在变量值的位置,若要重新提取变量名,单个变量依次重命名显然繁琐,那么我们有什么快捷的方法呢?

技术图片

convert_top_lines

ssc install convert_top_lines

使用该命令可以将数据集中的第一、第二行观察值分别转化为变量名、变量标签。值得注意的是,
这里的数据集需符合以下两个条件:
(1)数据集中所有变量均为字符型变量;
(2)数据集原始变量名必须为“v1、v2、v3…”的形式

第二个条件太苛刻了,看来这个命令不实用。

抱歉,我上句话说错了,这个命令很实用,在使用命令convert_top_lines前,先输入一条命令renvarlab A-L\v1-v12即可。

使用命令renvarlab A-L\v1-v12后的效果:
技术图片

现在直接使用convert_top_lines命令,实现目标变量名如下:
技术图片

或者,也可加上drop选项,删除第一行观察值,使变量值更美观,效果如下:
技术图片

上述命令总结为:

import excel using auto1.xlsx, clear //数据集变化,需要重新导入、命名
renvarlab A-L\v1-v12
convert_top_lines,drop

对于原数据集的第二行观察值,若要用作变量标签,则增加选项line2labels.

因为数据库的数据导出形式通常为:第一行为变量名,第二行为变量名的说明,即标签。

我们也可通过list选项观察数据集前三行数据情况来做检查:

import excel using auto1.xlsx, clear
renvarlab A-L\v1-v12
convert_top_lines, line2labels drop list //增加drop选项不影响list输出内容

注意

convert_top_lines命令修改变量名时,会默认所有变量名小写,原本存在的大写格式都会被取代。

该命令的基本语法如下:

convert_top_lines[, line2labels list drop]

命令可单独使用,表示仅将第一行观察值作为变量名,且该行观察值在转化后的数据集中仍保留。convert_top_lines命令后添加的选项,有以下含义:
(1)line2labels:在提取第一行观察值为变量名的同时,第二行观察值作为对应的变量标签;
(2)drop:提取后删除第一行观察值,若与选项line2labels联用,则删除前两行观察值;
(3)list:列出前三行观察值,若与选项drop联用,则列出删除观察值前的数据。

原本的变量名处在变量值的位置,如何重新提取变量名

标签:imp   选项   list   using   必须   com   env   导入   输出内容   

原文地址:https://www.cnblogs.com/kooshine/p/13081148.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!