【问题标题】:tostring turns character values into integerstostring 将字符值转换为整数
【发布时间】:2021-07-12 17:35:35
【问题描述】:

我正在尝试在下面的照片中转换 Stata (AP1) 中的一列,以便条目是字符串类型。目前,条目显示为字符(例如“cultivateur”),但显示为int 类型。

我使用以下代码尝试将它们更改为字符串。


label values AP1 .

tostring AP1, replace
AP1 was long now str5


虽然AP1 列变为字符串类型,但所有字符现在都变为整数,这不是我根据观察对数据进行子集化所需要的。

有谁知道我可以将此列切换为字符串类型而不使字符变为整数?

【问题讨论】:

    标签: string integer stata tostring


    【解决方案1】:

    您的图像几乎无法阅读 - 在手机或笔记本电脑上 - 但任何使用超大显示器的人都可以阅读。请参阅 Stata 标签 wiki,了解有关呈现可重现数据示例的指南。

    通过考虑可以重现地解释正在发生的事情

    . sysuse auto, clear
    (1978 automobile data)
    
    . tab foreign
    
     Car origin |      Freq.     Percent        Cum.
    ------------+-----------------------------------
       Domestic |         52       70.27       70.27
        Foreign |         22       29.73      100.00
    ------------+-----------------------------------
          Total |         74      100.00
    
    . tab foreign, nolabel
    
     Car origin |      Freq.     Percent        Cum.
    ------------+-----------------------------------
              0 |         52       70.27       70.27
              1 |         22       29.73      100.00
    ------------+-----------------------------------
          Total |         74      100.00
    
    . tostring foreign, gen(str_foreign)
    str_foreign generated as str1
    
    . tab str_foreign
    
     Car origin |      Freq.     Percent        Cum.
    ------------+-----------------------------------
              0 |         52       70.27       70.27
              1 |         22       29.73      100.00
    ------------+-----------------------------------
          Total |         74      100.00
    
    . d *foreign
    
    Variable      Storage   Display    Value
        name         type    format    label      Variable label
    ------------------------------------------------------------------------------------------------------------------
    foreign         byte    %8.0g      origin     Car origin
    str_foreign     str1    %9s                   Car origin
    

    foreign 就像您的有问题的变量是带有值标签的数字变量。 (对于数据集中的变量,Stata 中的术语“列”不是标准的。)将其推入tostring,您将获得一个包含整数字符的字符串变量。 Stata 照你说的做了。

    要获取包含值标签文本的字符串变量,您需要应用 decode 命令,该命令正是为此目的而编写的(顺便说一句,早于 tostring 作为官方命令)。

    【讨论】:

      猜你喜欢
      • 2017-06-11
      • 1970-01-01
      • 1970-01-01
      • 2021-12-14
      • 2016-07-02
      • 2013-02-08
      • 1970-01-01
      • 2016-09-01
      • 1970-01-01
      相关资源
      最近更新 更多