Я работаю с DataFrame Pandas спортивных результатов, который содержит серию «Score».Все элементы в этой серии содержат результаты обеих команд в одной строке, разделенные дефисом, без пробелов, например
('25-7', '6-2', ...)
Я пытаюсь разделить каждое значение на 2 отдельных списка: left_score и right_score с использованием Jupyterноутбук.Я использовал метод str.split('-')
для Series, который должен конвертировать каждую строку в список таким образом, чтобы мои оценки были
['25','7'], ['6','2']
. Однако, когда я запускаю это, он выполняется, но не распознаетдефис и возвращает всю строку как индекс 0.
Я попытался использовать '-' и "-" без разницы.Я также попытался использовать цикл for
и ядро Python str.split()
.Основная функция работает с автономной строкой в Jupyter, как и ожидалось, но при запуске в цикле она снова возвращает всю строку как единственный элемент.
Я также пытался напрямую получить доступ к строкам внутри Series.и функция по-прежнему не работает.Следующее должно возвращать «25», но возвращает «25 -7».
dataframe_name.Score.str.split("-").str[0][0]`
Действительно наслаждаюсь работой с Pandas и DataFrames, но синтаксис доказывает трудности - любые мысли приветствуются.
РЕДАКТИРОВАТЬ: Добавление образца кода по запросу.Обратите внимание, что это касается нескольких ячеек Jupyter, но я выполняю их последовательно.
In [1]:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
df = pd.read_csv('./file_name.csv', sep='\t')
df.head(3)
Out [1]:
df
_ Score
0 25-7
1 6-2
2 4-4
In [2]:
# Thanks to user Pygo, I attempted the suggested solution to no avail:
df['Score'].str.split('-',n=1,expand=False).values.tolist()
Out [2]:
[['25-7'],
['6-2'],
['4-4'],
... ]
- Jupyter Notebook версия 5.5.0
- Anaconda версия 5.2.0
- Python версия 3.6.5
- Pandas версия 0.23.0
- Numpy версия 1.14.3
Возможно, существует конфликт версий или ссылок?
EDIT2:
Я попытался выполнить итерацию по каждой букве в строке, чтобы выполнить функцию разделения вручную, и теперь обнаружил, что .join()
, +=
не работают внутри for
петли либо.Где мне искать неисправности Pandas и / или Core String в циклах Jupyter Notebook?