お世話になっております。
下記要件を満たす記述をご教授頂けますでしょうか。
<概要>
アンケートデータを結合してアウトプットします。
・アンケートデータ
1~10までの項目を当てはまるものだけ回答してます。
例)Aさん:1/5/6/8
Bさん:3/4/7/8/9/10
・アウトプット形式
1~10のカラムがあり、回答された所を1とし、回答されてないものを0とする。
例)Aさん:1/0/0/0/1/1/0/1/0/0(1,5,6,8を1とし、それ以外を0とする)
Bさん:0/0/1/1/0/0/1/1/1/1(3,4,7,8,9,10を1とし、それ以外を0とする)
よろしくお願い致します。
No.4ベストアンサー
- 回答日時:
#2のスクリプトの実行でエラーになったということですが、お使いになっている
perlはどういったものでしょうか。
わたしの手元で12.1と14.1で実行してなんの問題もありませんでした。
perl -v として実行するとどういった出力がされますか?
This is perl 5, version 14, subversion 1 (v5.14.1) built for MSWin32-x86-multi-thread
(with 1 registered patch, see perl -V for more detail)
Copyright 1987-2011, Larry Wall
Binary build 1401 [294969] provided by ActiveState http://www.ActiveState.com
Built Jun 16 2011 18:54:40
Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.
Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl". If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.
No.3
- 回答日時:
まず、文字列 0/0/0/0/0/0/0/0/0/0 を作り、回答のあった項目を substr で1に変換しています。
use strict;
foreach my $ans ('1/5/6/8', '3/4/7/8/9/10') {
my $result = '0/0/0/0/0/0/0/0/0/0';
substr($result, ($_ - 1) * 2, 1) = 1 foreach split /\//, $ans;
print "$result\n";
}
No.2
- 回答日時:
use strict;
use warnings;
use v5.12;
while (my $line = <DATA>) {
chomp $line;
my @ary = (0) x 10;
$ary[$_-1] = 1 for split '/', $line;
say join '/', @ary;
}
__END__
1/5/6/8
3/4/7/8/9/10
この回答への補足
ご回答ありがとうございます。
実行してみましたら下記エラーが発生致しました。
syntax error at xxx.pl line xxx, near "say join"
構文エラーだと検索してわかったのですが
perlを始めたばかりのため、対応方法まではわかりませんでした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- 統計学 前回イベントと今回イベントのデータ集計について 質問させてください。 イベント参加者の内アンケートを 3 2022/09/30 22:23
- その他(プログラミング・Web制作) google formsで回答者をスプレッドシートに記載する方法 1 2023/06/23 11:22
- Visual Basic(VBA) 【困っています2】VBA 追加処理の記述を教えてください。 2 2022/08/26 11:42
- その他(教育・科学・学問) 2月にゼミ論文を提出するのですが、データだけで4万字いきます。 1万字以上書かなければいけなく、私は 2 2023/01/05 20:31
- Visual Basic(VBA) 【VBA】データを入力後に,同一シート内に履歴として転記するVBAコードを教えていただきたいです。 3 2022/11/16 01:37
- Google Drive グーグルフォームのアンケート結果がグラフになります 1 2023/05/18 12:01
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
awkやsed等で特定の文字間を抜...
-
perlでリテラル値はメモリにど...
-
perlについて
-
perlについての質問
-
Excel VBA 定義されたプロージ...
-
ユーザー定義関数に#NAME?が返...
-
ArduinoのジャイロモジュールMP...
-
エクセルVBAでシートモジュール...
-
例外処理のフローチャートの記...
-
VBA This Workbookモジュール...
-
ユーザーフォームに最小化・最...
-
【vba】フォームに書いてあ...
-
Excel VBAでリンク切れをチェッ...
-
VBA モジュールで共通に使う変...
-
Pg.pmモジュールがロードできない
-
VBでグローバル変数を宣言するには
-
グラフのX,Y座標を取得したい
-
vba 標準モジュールインポート...
-
Excel VBAで、ユーザーフォーム...
-
印刷後メッセージボックスを表...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
perlでリテラル値はメモリにど...
-
perlについて
-
掲示板はPerlだけで作れますか?
-
perlについての質問
-
msgboxの表示
-
awkやsed等で特定の文字間を抜...
-
perlでmysqlのfetchrowとfetchr...
-
perl 「予定」が「嵐閧オ」に...
-
Perlで書いたプログラムをC言語...
-
perlで今日の日付から、今月の1...
-
perlでマイクロソフトAccessのa...
-
cgi(perl)で文中のURLを自動で...
-
win32なモジュールでファイルを...
-
perl qw 中でコメントアウトす...
-
Excel VBAでリンク切れをチェッ...
-
Excel VBA 定義されたプロージ...
-
例外処理のフローチャートの記...
-
ArduinoのジャイロモジュールMP...
-
ユーザー定義関数に#NAME?が返...
-
「デバイスは PRN を初期化でき...
おすすめ情報