Any idea why this is not working?
transform(df, All() .=> string; renamecols=false)
Isn't it supposed to apply the string function to all columns and as a result convert them? When adding ByRow it works, but an operation like this should be on entire columns not on each row.
What you describe works as expected.
stringtakes a whole vector and converts it to string (the vector, not its contents). To work on elements of the vector useByRow, as you have commented, or use broadcasting:The reason why in
All() .=> stringyou still get a vector is thattransformenforces that the number of rows is not changed in the result. Therefore the resulting string is reused. Note that withcombineyou would get a single row:To highlight the issue see how
stringoperates on a vector without DataFrames.jl: