有一个汤对象
<span class="nowrap">
2 633
<span class="currency rub">q</span>
</span>
我执行以下操作:
price = item.find('span', class_='nowrap')
price_x = price.text.strip()
print(price_x)
输出:2 633 q
告诉我如何在没有q的情况下退出
有一个汤对象
<span class="nowrap">
2 633
<span class="currency rub">q</span>
</span>
我执行以下操作:
price = item.find('span', class_='nowrap')
price_x = price.text.strip()
print(price_x)
输出:2 633 q
告诉我如何在没有q的情况下退出
有DF
Код Название Сумма
03.2.01.01-0001 Цемент 300
14.5.06.03-0002 Паста 125
03.2.01.01-0001 Цемент 120
14.5.06.03-0002 Паста 62
Надо
Код Название Сумма
03.2.01.01-0001 Цемент 420
14.5.06.03-0002 Паста 187
请告诉我如何将第一个数字更改为 7。
Телефон
84956895325
84951491991
89037481292
79269431224
自由度
Телефон
0 749578267921216406327
1 84951491991
2 79037481292
3 74992506983
4 84957975576
5 749567348106039156
如何只保留字符串中的前 11 位数字?
自由度
Телефон
0 4956895325
1 84951491991
2 9037481292
3 74992506983
4 84957975576
5 749567348106039156
如何选择每行的前 11 位数字?如果字符串中有 10 位数字,则先替换 7
有df
一列Телефон
:
df.dtypes
Телефон object
dtype: object
包含以下数据:
Телефон
(495) 689-53-25
84951491991
(903)748-12-92
+7 (499) 250-69-83
8(495) 797-55-76
如何将它们带到表格:79995551111?
有一个数据框。该表如下所示:
Инн Название Тип
231216 Орк есть
432569 Шрек нет
df.dtypes
Инн object
告诉我如何通过前两位数字在 Inn 列中进行选择(其余数字无关紧要)?
有一个 DataFrame,其中Инн
是一个索引(int)。
该表如下所示:
Инн Название Тип
231216 Орк есть
432569 Шрек нет
告诉我如何按Инн
前两位数字按列进行选择(其余数字无关紧要)?
有一个Материалы
作为索引的 DataFrame。表是这样的:
Материалы Поставщик Дата поставки Отклонение
Перчатки А 01.02.18 5.00
Анкер В 02.02.18 6.00
Бур С 03.05.18 3.50
Перчатки А 04.06.18 4.00
等等
该变量А
包含来自使用分组获得的 DataFrame 的数据:
Поставщик Среднее отклонение
0 А 12.00
1 В 11.23
2 С 9.02
3 D 22.16
如何对进入变量的每个供应商的数据进行分组А
?
从初始 DataFrame 分组并在单独的变量中显示每个供应商的数据。提供者的数量未知。
Per1
(多变的)
Материал Поставщик Дата поставки Отклонение
Перчатки А 01.02.18 5.00
Перчатки А 04.06.18 4.00
Рer2
Анкер В 02.02.18 6.00
等等
对于包含在А
. 如果他们没有到达那里,那就忽略它。
材料是一个指标。有必要按供应商分组并计算其平均偏差。
原始 DataFrame 如下所示:
Материалы Поставщик Отклонение
Алебастр 5кг ФОРПОСТ 18.00 %
Атмосфера (60м2) ФОРПОСТ 27.36 %
Бур 6*160 по бетону Стройбаза-Спектр 5.02 %
Валик 100мм Стройбаза-Спектр 3.04 %
Валик 240мм Электротехническая компания 3.29 %
以及更多不同职位的材料和供应商。
我想收到以下信息:
Поставщик Среднее отклонение
Форпост 22 %
Стройбаза-Спектр 4.01 %
Электротехническая компания 3 %
等等
我上传一个文件,将其中一列设为索引 - СубконтоДт1
。有必要分组СубконтоДт1
,进行计算和输出。
源表:
СубконтоДт1 Период СубконтоДт1 Сумма Цена
Утеплитель 2018-09-21 ФОРПОСТ 16193.90 1124.58
Утеплитель 2018-07-12 ФОРПОСТ 15559.32 1296.61
Утеплитель 2019-09-13 ФОРПОСТ 4060.80 1410.00
Валик 2019-02-25 Электро 172.50 172.50
Валик 2019-05-08 Электро 182.00 182.00
还有更多职位。
我计算了特定材料的价格偏差 ( СубконтоДт1
) 如下:
df['Цена'] = df['Сумма'] / df['Количество']
x = df.loc[['Поддон 1250*2500'], ['Период', 'СубконтоКт1', 'Цена']]
x1 = x.nlargest(1, 'Цена')
x2 = x.nsmallest(1, 'Цена')
x['Процент отклонения'] = (x1['Цена'] - x2['Цена']) / (x2['Цена'] / 100)
pd.set_option('display.precision', 2)
x
СубконтоДт1 Период СубконтоКт1 Цена Процент отклонения
Поддон 1250*2500 2018-09-25 СтальСоюз ПК 550.85 10.77
Поддон 1250*2500 2019-06-21 СтальСоюз ПК 541.67 10.77
Поддон 1250*2500 2019-06-08 СтальСоюз ПК 541.67 10.77
Поддон 1250*2500 2019-02-12 СтальСоюз ПК 600.00 10.77
我想根据第一个表得到以下信息:
СубконтоДт1 СубконтоКт1 Процент отклонения
Утеплитель ФОРПОСТ 12 %
Валик Электро 11%
Поддон 1250*2500 СтальСоюз ПК 10.77%
有一个数据框:
我加载文件,将其中一列设为索引。共有7列,需要按“SubcontoDt1”折叠,同时按日期和供应商过滤。
下面是一个应该发生的事情的例子。
Дата Поставщик Цена
СубконтоДт1
перчатки 12.01.12 ООО"А" 12.00
перчатки 13.01.12 ООО"А" 14.00
профиль 26.02.14 ООО"В" 26.00
профиль 29.03.14 ООО"В" 27.00
请告诉我,这怎么办?
这是表格现在的样子:
df = pd.read_csv("333.csv", sep=';', header=0, index_col="СубконтоДт1", decimal=',')
Дата Поставщик Цена
СубконтоДт1
перчатки 12.01.12 ООО"А" 12.00
уголок 14.01.12 ООО"С" 5.00
профиль 26.02.14 ООО"В" 26.00
перчатки 13.01.12 ООО"А" 14.00
профиль 29.03.14 ООО"В" 27.00
等等,不同日期的不同供应商提供的许多不同物品
从类型转换object
为int
数据部分时,它被替换为NaN
.
告诉我我做错了什么?
上传文件:从1C上传
df = pd.read_csv("333.csv", sep=';', header=0, index_col="СубконтоДт1")
df.dtypes
所有对象 ( object
)。
Сумма
该对象存在于列中。
然后我去掉空格,插入NaN
并转换成格式int
,这两列是 object
钢制的float
,但是部分数据看起来像NaN
,部分数字:
df = df.replace(r'\s+','', regex=True)
df['Сумма'] = pd.to_numeric(y['Сумма'], errors='coerce')
df['Количество'] = pd.to_numeric(y['Количество'], errors='coerce')
请告诉我我做错了什么。