stringとdoubleの配列を結合したいです

stringで書かれたデータ(IDという名前の、737x1 string) と、doubleで書かれたデータ(LUTという名の、737x9 double)
を結合したいです。
[ID LUT]で連結するとstringになってしまうのか、数字が使えなくなります
やりかたを教えてください

 채택된 답변

Atsushi Ueno
Atsushi Ueno 2023년 5월 26일

1 개 추천

str2double関数でstring型⇒double型に変換してから結合するのはどうでしょうか。仮定が誤ってたらごめんなさい。
ID = repmat("9.87",2,1); % (IDという名前の、737x1 string) と、
LUT = repmat(1.23,2,9); % doubleで書かれたデータ(LUTという名の、737x9 double)
[str2double(ID) LUT] % で連結するとstringになってしまうのか、数字が使えなくなります
ans = 2×10
9.8700 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 9.8700 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300

댓글 수: 3

Atsushi Ueno
Atsushi Ueno 2023년 5월 26일
이동: Atsushi Ueno 2023년 5월 26일
問題の再現:
row = 2;% 737は表示するのに長過ぎるので、2に変更
ID = repmat("9.87",row,1) % (IDという名前の、737x1 string) と、
ID = 2×1 string array
"9.87" "9.87"
LUT = repmat(1.23,row,9) % doubleで書かれたデータ(LUTという名の、737x9 double)
LUT = 2×9
1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300 1.2300
[ID LUT] % で連結するとstringになってしまうのか、数字が使えなくなります
ans = 2×10 string array
"9.87" "1.23" "1.23" "1.23" "1.23" "1.23" "1.23" "1.23" "1.23" "1.23" "9.87" "1.23" "1.23" "1.23" "1.23" "1.23" "1.23" "1.23" "1.23" "1.23"
(変更) string型のデータを"a"から"9.87”に変更
目的から考えて、string型の数値とdoubleの数値を結合したいのだろうと認識を改めました。
Atsushi Ueno
Atsushi Ueno 2023년 5월 30일
ああああ!想定した背景が全然違いましたね。取り消したいこの回答!
@Akira Agataさんの回答を採用してくださいな
kenichiro inagaki
kenichiro inagaki 2023년 5월 31일
いえ!!ありがとうございます!勉強になりました

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Akira Agata
Akira Agata 2023년 5월 30일
이동: Atsushi Ueno 2023년 5월 30일

1 개 추천

+1
もし ID が文字列でしたら、table 型変数として結合する方法もあります。
以下、簡単のためサイズが 3×1 の ID (string型) と 3×9 の LUT (double型) で説明します。
% ID, LUTのサンプル
ID = ["Taro"; "Jiro"; "Saburo"];
LUT = rand(3, 9);
% 方法1: 単純に table 型変数として結合
T1 = table(ID, LUT)
T1 = 3×2 table
ID LUT ________ __________ "Taro" 1×9 double "Jiro" 1×9 double "Saburo" 1×9 double
% 方法2: LUTの各列が table 型変数の列となるように結合
T2 = [table(ID), array2table(LUT)]
T2 = 3×10 table
ID LUT1 LUT2 LUT3 LUT4 LUT5 LUT6 LUT7 LUT8 LUT9 ________ _______ ________ ________ ________ _______ ________ _______ _______ _______ "Taro" 0.91808 0.56202 0.95989 0.78458 0.88718 0.035245 0.68346 0.58253 0.7867 "Jiro" 0.25424 0.45737 0.080926 0.50479 0.57011 0.80057 0.19485 0.74479 0.14043 "Saburo" 0.99111 0.028028 0.072873 0.040447 0.28866 0.24511 0.6243 0.59973 0.16528

댓글 수: 1

kenichiro inagaki
kenichiro inagaki 2023년 5월 30일
이동: Atsushi Ueno 2023년 5월 30일
皆様
(ここに返事して良いんですかね・・・)ご回答ありがとうございます。
えっと、やりたいことはAkira Agara様のご回答に近いです
IDは数字ですが文字として扱いたいです(01172023 のようなもの)
いちどこれでやってみます ありがとうございます!

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 データ型の変換에 대해 자세히 알아보기

제품

릴리스

R2022a

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!