BookmarkSubscribeRSS Feed
ddcjack
Calcite | Level 5

I read in the CSV file to dataset by using the PROC IMPORT. the UTF-8 specifical character carriage return looks like the single quatation sign ('). I need to remove it form the text variables and keep the normal single quatation sign. please suggest. thanks.

4 REPLIES 4
ChrisNZ
Tourmaline | Level 20

Like this?

 

data _null_;
  A="‘a’";
  B=translate(A,"''","‘’");
  putlog B=;
run;

B='a'

ddcjack
Calcite | Level 5

Thanks for your suggestion, ChrisNZ. I tried your code; but it seems not work.

ballardw
Super User

I have a number of UTF-8 CSV files and none of them have this behavior. By any chance are you looking at a file generated in a different operating system? You  may want to investigate the TERMSTR option for the Infile statement or use a FILENAME with that option to reference for proc import if that is the case.

Peter_C
Rhodochrosite | Level 12
If you know the data types of your csv file columns, a data step will eliminate that unwanted carriage return if you add it to the delimiter= infile option
Data your_data ;
Length your csv file columns $100 ;
Infile "/path/your csv file.csv" dsd delimiter= "0D2c"x lrecl= 1000 firstobs= 2;
input your csv file columns;
Run;
How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 4 replies
  • 2321 views
  • 0 likes
  • 4 in conversation