





"""simple docstring"""






from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier

# Load iris file
lowerCAmelCase_      =				load_iris()
iris.keys()


print(F'''Target names: \n {iris.target_names} ''')
print(F'''\n Features: \n {iris.feature_names}''')

# Train set e Test set
lowerCAmelCase_      ,					lowerCAmelCase_      ,					lowerCAmelCase_      ,					lowerCAmelCase_      =				train_test_split(
    iris['''data'''], iris['''target'''], random_state=4
)

# KNN

lowerCAmelCase_      =				KNeighborsClassifier(n_neighbors=1)
knn.fit(X_train, y_train)

# new array to test
lowerCAmelCase_      =				[[1, 2, 1, 4], [2, 3, 4, 5]]

lowerCAmelCase_      =				knn.predict(X_new)

print(
    F'''\nNew array: \n {X_new}\n\nTarget Names Prediction: \n'''
    F''' {iris["target_names"][prediction]}'''
)













"""simple docstring"""






def    __lowerCamelCase     (							SCREAMING_SNAKE_CASE				)		->							bool:






       """simple docstring"""




       if not isinstance(SCREAMING_SNAKE_CASE,SCREAMING_SNAKE_CASE				):
              raise ValueError('Input series is not valid, valid series - [2, 4, 8]'				)
       if len(SCREAMING_SNAKE_CASE				) == 0:
              raise ValueError('Input list must be a non empty list'				)
       if len(SCREAMING_SNAKE_CASE				) == 1:
              return True
       try:
              _UpperCAmelCase			     =  series[1] / series[0]
              for index in range(len(SCREAMING_SNAKE_CASE				) - 1				):
                     if series[index + 1] / series[index] != common_ratio:
                            return False
       except ZeroDivisionError:
              return False
       return True

def    __lowerCamelCase     (							SCREAMING_SNAKE_CASE				)		->							float:






       """simple docstring"""




       if not isinstance(SCREAMING_SNAKE_CASE,SCREAMING_SNAKE_CASE				):
              raise ValueError('Input series is not valid, valid series - [2, 4, 8]'				)
       if len(SCREAMING_SNAKE_CASE				) == 0:
              raise ValueError('Input list must be a non empty list'				)
       _UpperCAmelCase			     =  1
       for value in series:
              answer *= value
       return pow(SCREAMING_SNAKE_CASE,1 / len(SCREAMING_SNAKE_CASE				)				)


if __name__ == "__main__":
    import doctest

    doctest.testmod()






