import re
searchstr=(
ff.loc[ff['B']
.str.contains(r'строка',regex=True,flags=re.IGNORECASE),['А','B']
]
)
Выберет подсет датафрейма ff (колонки 'A' и 'B'), где в 'В' содержится 'строка'. return int(answer)
выхода из функции не происходит (только рекурсивный вызов остановлен). python идет дальше, пропускает else, затем у функции отсутствует return и он возвращает None.return gen_nums(stop_n, number)
empty_sets = []
for _ in range(3):
empty_sets.append(set())
for obj in empty_sets:
print(id(obj))
a = set()
b = set()
a is b
Тоже как и ожидается. for _ in range(3):
print(id([]))
for _ in range(3):
print(id(list()))
import itertools
[list(itertools.chain.from_iterable(x)) for x in (list(itertools.product(A,B)))]
df[df['comment_text'].str.contains(r'[^\w\s,]', regex=True)]
Для моего примера работает, сработает ли в целом неизвестно. def test(n, rez = None):
if rez is None:
rez = []
for i in range(n):
rez.append(i)
return rez
df['predictions'] = (
model
.predict(X)
.replace({0:'Метка ассоциируема с 0', 1:'Метка ассоциируемая с 1'})
)
low = df['Age'].quantile(0.05)
upper = df['Age'].quantile(0.95)
df[df['Age'].between(low, upper)]
np.percentile()
plt.xticks(range(2006,2023))
Второй параметр в данном случае тебе не нужен. Глянь пример из доков, также. Да и имей ввиду если ты используешь ооп апи, работаешь с объектами axes, то там set_xticks
и set_xticklabels
. То есть на два метода этот функционал разбит, например https://www.geeksforgeeks.org/matplotlib-axes-axes... for i in time:
data = change_data(i)
Ну ты перезаписываешь свои данные да и все. То есть в data у тебя остается последний результат вызова функции для последнего i. benz_df['time'] = data
колонке time, значение data. Он его броадкастит на всю колонку да и все. Ты ожидаешь что data это массив c данными, а это одно значение. data= []
for i in time:
data.append(change_data(i))
benz = pd.read_xml(benz_xml_file, xpath='.//filling')
benz_df = pd.DataFrame(benz)
benz_df['time'] = benz_df['time'].apply(change_data)
benz_df['time'][:50]
df = df.dropna()
Ну на всякий случай проверь после этой строчки df.isnull().sum()
Должны быть нули, далее там же проверь не попало ли строковое значение (df == 'NaN').sum()
df = df.where(df['area_name'].apply(lambda x: x in used_cities))
появляется NaN, что собственно логично, ты предоставляешь , булевый массив True, False. где pandas оставит оригинальное значение где состояние True и заменит на твое (которое ты не предоставил) где значение False. То есть вторым параметром ты должен был предоставить значение, (по умолчанию оно NaN). df = df.where(df['area_name'].apply(lambda x: x in used_cities), 'Твое значение')
df = pd.read_csv('myfile.csv', sep=';', decimal=',')
df = df.set_index('time')
df.plot()