Вы можете использовать метод .split()
для разделения значений в строках.
Используйте .apply()
для создания новых столбцов фрейма данных для каждого желаемого имени столбца.
import pandas as pd
data = ["Adenauerplatz 52° 29′ 59″ N, 13° 18′ 26″ O",
"Afrikanische Straße 52° 33′ 38″ N, 13° 20′ 3″ O",
"Alexanderplatz 52° 31′ 17″ N, 13° 24′ 48″ O"]
df = pd.DataFrame(data, columns=['Train_station'])
def train_station(x):
x = x.split(' ', 1)
return x[0]
def latitude(x):
x = x.split(' ', 1)
x = x[1].split(', ', 1)
return x[0]
def longitude(x):
x = x.split(' ', 1)
x = x[1].split(', ', 1)
return x[1]
df['Latitude'] = df['Train_station'].apply(latitude)
df['Longitude'] = df['Train_station'].apply(longitude)
df['Train_station'] = df['Train_station'].apply(train_station)
print(df)
То, что вы видите выше, является воссозданием вашего исходного фрейма данных, а затем изменено с помощью .split()
и .apply()
Вывод:
Train_station Latitude Longitude
0 Adenauerplatz 52° 29′ 59″ N 13° 18′ 26″ O
1 Afrikanische Straße 52° 33′ 38″ N 13° 20′ 3″ O
2 Alexanderplatz 52° 31′ 17″ N 13° 24′ 48″ O