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()
class MyClass:
def __init__(self, items):
self.items = items
initial_total_value = self.total()
def total(self):
return sum(self.items)
@classmethod
def from_str(cls, string):
return cls([int(i) for i in string])
a = MyClass([1,2,3])
print(a.total())
b = MyClass.from_str('123')
print(b.total())
То есть смотри мой класс метод возвращает изменный объект класса, на котором без проблем сработает конструктор экземпляра класса. words = {
'm': 2,
'a': 3,
'l': 1,
'i': 1,
'n': 2,
's': 1,
'o': 5,
'r': 1,
'd': 1
}
jams = {
'smorodina': 1,
'malina': 2
}
total = 0
for jam, amount in jams.items():
jam_time = 0
for letter in jam:
jam_time += words[letter]
total += jam_time * amount
print(total)