2017-11-20 25 views
1

Stataのアルファベット順に文字列可変文字をソートする必要があります。誰かがそれを行うためのコマンドや方法を提案できますか?文字列の文字をアルファベット順にソート

例:1000の観測値を持つ文字列変数があります。サイズは、最も簡単な方法は、個別の観測の各文字とのバージョンに簡単にだけexpandデータへの可能性があるデータセットについて

School--chloos 
sort--orst 
akramabad-dabamarka 
+0

この件に関してさらに問題がある場合は、Googleで「stata sort list alphabetised order」を検索してみてください。 – Adriano

+0

ダバマカは間違っています! –

+0

'dabamarka'はアルファベット順ではなく' akramabad'を逆にしています。 –

答えて

1

:だから方法は、文字、このような(文字)を並べ替えます。あなたの質問は、大文字と小文字のルールを開いたままですが、例文"School""chloos"に、小文字を使用していることを意味しています。

clear 
input str9 sandbox 
"School" 
"sort" 
"akramabad" 
end 

gen length = length(sandbox) 
gen id = _n 
expand length 
bysort id : gen char = substr(lower(sandbox), _n, 1) 
sort id char 
bysort id (char) : gen newbox = char[1] 
by id: replace newbox = newbox[_n-1] + char if _n > 1 
by id: replace newbox = newbox[_N] 
by id: keep if _n == 1 
drop length char 

list 

    +----------------------------+ 
    | sandbox id  newbox | 
    |----------------------------| 
    1. | School 1  chloos | 
    2. |  sort 2  orst | 
    3. | akramabad 3 aaaabdkmr | 
    +----------------------------+ 

各文字ごとに別々の変数を作成し、それらを観察内でソートすることも可能です。

+0

ありがとう@ニック!これは本当にうまくいった。あなたの助けに感謝! – Ataullah

+1

良い答えを受け入れることで、さらに評判が上がります(私も)。 –

関連する問題