Ваш пример выглядит так, как будто вы пытаетесь отобразить значения вашего фрейма данных, но если вы действительно «хотите удалить значение столбца Number из имени столбца», как вы говорите, то вы можете перебрать все столбцы и переименовать каждый из них следующим образомтак (в Java):
for (String col : df.columns()) {
df = df.withColumnRenamed(col, col.replaceAll("[^A-Za-z]",""));
}
Если вы пытаетесь удалить числа из всего набора данных, вам придется map
каждая строка:
String[] columns = df.columns();
df = df.map(row -> {
String[] newValues = new String[columns.length];
for (int i = 0; i < columns.length; i++) {
newValues[i] = row.getString(i).replaceAll("[^A-Za-z]","");
}
return RowFactory.create(newValues);
}, RowEncoder.apply(df.schema()));