strtof#
Purpose#
Converts a string array to a numeric matrix, or a categorical / string column of a dataframe to a numeric column.
Format#
- x = strtof(sa)#
- Parameters:
sa (NxK string array) – numeric data.
- Returns:
x (NxK matrix) – converted string array.
Examples#
Example 1: Convert a string dataframe column to a numeric variable#
Our first step will be to create a dataframe with one variable that contains numbers inside of strings.
// Create a 3x1 string array
sa = "0.9" $| "2.3" $| "1.7";
// Convert the string array to a dataframe
// with one variable named "GDP"
df_sa = asdf(sa, "GDP");
print df_sa;
The above code will print:
GDP
0.9
2.3
1.7
Our next step will be to convert the string labels in this dataframe to real numbers with strtof()
:
// Convert the strings to real numbers
df_num = strtof(df_sa[.,"GDP"]);
print df_num;
The above code will print the following output, showing us that the data is now numeric.
GDP
0.90000000
2.3000000
1.7000000
Example 2: Convert a string array to a numeric matrix#
// Create a string array
string sa = { "1.1" "2.2" "3.3",
"4.4" "5.5" "6.6" };
num = strtof(sa);
After the code above, num
is a numeric matrix with the following values:
1.100 2.200 3.300
4.400 5.500 6.600
Remarks#
Elements with more than one numerical character separated by a delimiter such as a comma or a space will be interpreted as complex data. For example, the string:
"1.2 1.9"
will be converted into the number:
1.2 + 1.9i
Parentheses surrounding the numerical elements in the string will be
ignored as will be a following i. The following strings will be
interpreted as the same by strtof()
.
"(2.31 4.72)""2.31 4.73""2.31,4.73i"
See also
Functions strtofcplx()
, ftostrC()