I want to calculate the distance between two points and label them. The problem is that the code doesn't work on more than 1 line. When there is 1 row, the program shows me result which I want:
This is an error when there is more than 1 line : "cannot convert the series to <class 'float'>"
This is my code:
data = pd.read_csv (r'C:\Users\DSAij\Documents\Projekt.csv')
data.head()
choices_1 = ['short','medium','long']
if not ((data['x_start'] < data['x_end']) & (data['y_start'] < data['y_end'])).empty:
conditions_1 = [
((math.sqrt((((data['x_end']) - (data['x_start']))**2) + ((data['y_end'])-(data['y_start']))**2)) < 5),
((math.sqrt((((data['x_end']) - (data['x_start']))**2) + ((data['y_end'])-(data['y_start']))**2)) >= 5 and
(math.sqrt((((data['x_end']) - (data['x_start']))**2) + ((data['y_end'])-(data['y_start']))**2)) < 10),
((math.sqrt((((data['x_end']) - (data['x_start']))**2) + ((data['y_end'])-(data['y_start']))**2)) > 10)]
data['Pass'] = np.select(conditions_1, choices_1)
# if not ((data['x_start'] < data['x_end']) & (data['y_start'] > data['y_end'])).empty:
# conditions_2 = [
# ((math.sqrt((((data['x_end']) - (data['x_start']))**2) + ((data['y_start'])-(data['y_end']))**2)) < 5),
# ((math.sqrt((((data['x_end']) - (data['x_start']))**2) + ((data['y_start'])-(data['y_end']))**2)) >= 5 and
# (math.sqrt((((data['x_end']) - (data['x_start']))**2) + ((data['y_start'])-(data['y_end']))**2)) < 10),
# ((math.sqrt((((data['x_end']) - (data['x_start']))**2) + ((data['y_start'])-(data['y_end']))**2)) > 10)]
# data['Pass'] = np.select(conditions_2, choices_1)
# if not ((data['x_start'] > data['x_end']) & (data['y_start'] < data['y_end'])).empty:
# conditions_3 = [
# ((math.sqrt((((data['x_start']) - (data['x_end']))**2) + ((data['y_end'])-(data['y_start']))**2)) < 5),
# ((math.sqrt((((data['x_start']) - (data['x_end']))**2) + ((data['y_end'])-(data['y_start']))**2)) >= 5 and
# (math.sqrt((((data['x_start']) - (data['x_end']))**2) + ((data['y_end'])-(data['y_start']))**2)) < 10),
# ((math.sqrt((((data['x_start']) - (data['x_end']))**2) + ((data['y_end'])-(data['y_start']))**2)) > 10)]
# data['Pass'] = np.select(conditions_3, choices_1)
# if not ((data['x_start'] > data['x_end']) & (data['y_start'] > data['y_end'])).empty:
# conditions_4 = [
# ((math.sqrt((((data['x_start']) - (data['x_end']))**2) + ((data['y_start'])-(data['y_end']))**2)) < 5),
# ((math.sqrt((((data['x_start']) - (data['x_end']))**2) + ((data['y_start'])-(data['y_end']))**2)) >= 5 and
# (math.sqrt((((data['x_start']) - (data['x_end']))**2) + ((data['y_start'])-(data['y_end']))**2)) < 10),
# ((math.sqrt((((data['x_start']) - (data['x_end']))**2) + ((data['y_start'])-(data['y_end']))**2)) > 10)]
#data['Pass'] = np.select(conditions_4, choices_1)
The part that is commented out is when the x_end is greater than x_start etc.
This is my data frame