現在、圧縮されたCSVファイルをSASにインポートしようとしています。日付はYYYY-MM-DDの形式で3列あります。このcsvファイル内のすべてのデータは一意の行になっていますので、文字列であり数字として認識されないと思います(私は最近コーディングを始めましたが残念ですが、まだ多くの基本を学んでいます)。 何が起こるかは、SASは8文字と仮定し、それは基本的に1日を欠いている2010-08-と出てくる。 私は入力を使ってそれを回避するためにいくつかの方法を試しましたが、これまで解決していませんでした。私は空の列または変換番号(52789など - 私はSASが参考に使用している1960年の日付から推測されます)を取得します 私は皆さんに私にこれをどうやっていくかのヒントを教えていただければ幸いです。 コードは:SAS:日付付きのCSVファイルをインポートする
FILENAME IPC3data zip 'C:\Users\********\IPC3data.zip'
member='tls201_appln.csv';
DATA newdata;
INFILE IPC3data DLM=';' DSD FIRSTOBS=2;
INPUT appln_id $ appln_auth $ appln_nr $ appln_kind $ appln_filing_date $ appln_filing_year $ appln_nr_epodoc $ appln_nr_original $ ipr_type $ internat_appln_id $ int_phase $ reg_phase $ nat_phase $ earliest_filing_date $ earliest_filing_year $ earliest_filing_id $ earliest_publn_date $ earliest_publn_year $ earliest_pat_publn_id $ granted $ docdb_family_id $ inpadoc_family_id $ docdb_family_size $ nb_citing_docdb_fam $ nb_applicants $ nb_inventors;
Filing_date = input(appln_filing_date, ANYDTDTE10.);
put Filing_date=YYMMDD10.;
Early_filing_date = input(earliest_filing_date, ANYDTDTE10.);
put Early_filing_date=YYMMDD10.;
Early_publn_date = input(earliest_publn_date, ANYDTDTE10.);
put Early_publn_date=YYMMDD10.;
RUN; ありがとう!
親愛なるトム、長さのコメントありがとう - 問題を解決しました! U R右、私はまた、いくつかのID列のための8つ以上のスペースが必要です。しかし私がinformat/format部分を追加すると、エラー文 "Informat $ yymmdd。が見つかりませんでした"または "読み込めませんでした"が表示されます。私はまだこれを追加する必要があるかどうかわからない長さの声明は私に完全な日付を与えた? – Annina
変数の型に合ったインフォーマットを使用する必要があります。あなたの変数は文字SASだったので、文字結果を生成するインフォーマットを探しています。したがって、エラーメッセージの余分な$。変数を必ず数値として定義してください。 – Tom