Форум программистов, компьютерный форум, киберфорум
Python: Научные вычисления
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636

Знакомство с pandas

14.04.2021, 11:46. Показов 2389. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У меня стоит задача:
1. Установить pandas
2.Считать многомерный массив данных в pandas. Продемонстрировать - среднее значение, среднеквадратическое значение, минимум / максимум по признакам, фильтрацию данных.

Помогите выполнить второй пункт, у меня не выходит. Устал уже искать в интернете рабочий вариант(
Вот что уже есть:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from pandas import read_csv
df1 = read_csv("df1.txt")
print(df1)
print(df1.values)
print()
 
     x y
0  427 3
1  707 4
2  957 2
3  437 1
[['427 3']
 ['707 4']
 ['957 2']
 ['437 1']]
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
print(df1.min())
print(df1.max())
print()
print(df1.mean())
 
print(df1.mean(axis=0)['x'])
print(df1.values.mean(axis=0))
x y    427 3
dtype: object
x y    957 2
dtype: object
 
Series([], dtype: float64)
---------------------------------------------------------------------------
 
KeyError                                  Traceback (most recent call last)
 
c:\users\stark\desktop\jupyter\venv\lib\site-packages\pandas\core\indexes\base.py in get_loc(self, key, method, tolerance)
   3079             try:
-> 3080                 return self._engine.get_loc(casted_key)
   3081             except KeyError as err:
 
pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()
 
pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()
 
pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()
 
pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()
 
KeyError: 'x'
 
 
The above exception was the direct cause of the following exception:
 
KeyError                                  Traceback (most recent call last)
 
<ipython-input-9-2e63fd2404d7> in <module>
      5 dfs = [df1]
      6 pd.concat(dfs, axis=1).mean(axis=1)
----> 7 print(df1.mean(axis=0)['x'])
      8 print(df1.values.mean(axis=0))
 
c:\users\stark\desktop\jupyter\venv\lib\site-packages\pandas\core\series.py in __getitem__(self, key)
    851 
    852         elif key_is_scalar:
--> 853             return self._get_value(key)
    854 
    855         if is_hashable(key):
 
c:\users\stark\desktop\jupyter\venv\lib\site-packages\pandas\core\series.py in _get_value(self, label, takeable)
    959 
    960         # Similar to Index.get_value, but we do not fall back to positional
--> 961         loc = self.index.get_loc(label)
    962         return self.index._get_values_for_loc(self, loc, label)
    963 
 
c:\users\stark\desktop\jupyter\venv\lib\site-packages\pandas\core\indexes\base.py in get_loc(self, key, method, tolerance)
   3080                 return self._engine.get_loc(casted_key)
   3081             except KeyError as err:
-> 3082                 raise KeyError(key) from err
   3083 
   3084         if tolerance is not None:
 
KeyError: 'x'
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.04.2021, 11:46
Ответы с готовыми решениями:

Знакомство
Напишите программу, которая выводит на первой строчке «Привет, Яндекс!», а на второй – «Приятно познакомиться.»

Знакомство с С#
Здравствуйте! Хотел попросить чтоб опытный пользователь мне разъяснили по поводу C#, хотел бы освоить этот ЯП, начал с книги Head...

Знакомство
Всем привет! хочу познакомится с программистом для Майл Агента, можно начинающего для взаимопомощи, просто неудобно общатся на форуме да и...

11
578 / 411 / 69
Регистрация: 09.01.2018
Сообщений: 1,363
14.04.2021, 12:33
Цитата Сообщение от Vlast001 Посмотреть сообщение
Устал уже искать в интернете рабочий вариант(
Сколько же вы искали, что аж утомились? Думаю, минуты три или даже целых четыре?? И что, Гуугл так и сказал - всем скажу как, а вот вам - ни за что?

Первая же ссылка по запросам в Гуугл:
Среднее значение по столбцу:
Python
1
df["x"].mean() или df.x.mean()
Среднеквадратическое значение отклонение:
Python
1
df.x.std()
Минимум и максимум
Python
1
df.x.max() df.x.min ()
0
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
14.04.2021, 12:36  [ТС]
Цитата Сообщение от passant Посмотреть сообщение
реднее значение по столбцу:

df["x"].mean() или df.x.mean()
df1["x"].mean()
---------------------------------------------------------------------------

KeyError Traceback (most recent call last)

c:\users\stark\desktop\jupyter\venv\lib\ site-packages\pandas\core\indexes\base.py in get_loc(self, key, method, tolerance)
3079 try:
-> 3080 return self._engine.get_loc(casted_key)
3081 except KeyError as err:

pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()

pandas\_libs\index.pyx in pandas._libs.index.IndexEngine.get_loc()

pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable .get_item()

pandas\_libs\hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable .get_item()

KeyError: 'x'

Добавлено через 59 секунд
Цитата Сообщение от passant Посмотреть сообщение
Среднеквадратическое значение отклонение:
Значение и отклонение это разные вещи, буду знать что отклонение это метод std() но он мне не нужен
0
578 / 411 / 69
Регистрация: 09.01.2018
Сообщений: 1,363
14.04.2021, 12:40
Ну так у вас "х" кириллическим шрифтом написан. Либо в вашем файле, либо в коде.
0
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
14.04.2021, 12:41  [ТС]
Цитата Сообщение от passant Посмотреть сообщение
Ну так у вас "х" кириллическим шрифтом написан. Либо в вашем файле, либо в коде.
Везде написан в английской раскладке
0
578 / 411 / 69
Регистрация: 09.01.2018
Сообщений: 1,363
14.04.2021, 12:45
Чудес на свете не бывает:

Python
1
2
3
df1=pd.DataFrame( {'x':[427,707,957,437],'y':[3,4,2,1]})
print(df1)
df1["x"].mean()
Результат:
Python
1
2
3
4
5
6
     x  y
0  427  3
1  707  4
2  957  2
3  437  1
Out[80]: 632.0
А вообще-то подумайте, почему у вас вывод df1.values дается в виде строк а не чисел.
1
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
14.04.2021, 12:48  [ТС]
Цитата Сообщение от passant Посмотреть сообщение
df1=pd.DataFrame( {'x':[427,707,957,437],'y':[3,4,2,1]})
print(df1)
df1["x"].mean()
Хотелось б с файла, ну и так сойдет, главное работает. Спасибо!
Подскажите пожалуйста, как сделать фильтрацию данных и что это может быть?
0
578 / 411 / 69
Регистрация: 09.01.2018
Сообщений: 1,363
14.04.2021, 12:50
Это вы у своего преподавателя спрашивайте. Думаю, вряд-ли вам дали задание не дав предварительно теоретического материала.
0
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
14.04.2021, 13:00  [ТС]
Цитата Сообщение от passant Посмотреть сообщение
Думаю, вряд-ли вам дали задание не дав предварительно теоретического материала.
Раз на раз не приходиться, современное преподавание.. xD

Если просто показать, что можно фильтровать данные чтобы это было? Это как запрос в бд? Допустим отобразить таблицу данных где x > 450 это ж будет фильтром? Как что-то такое в pandas сделать?
0
578 / 411 / 69
Регистрация: 09.01.2018
Сообщений: 1,363
14.04.2021, 13:22
Цитата Сообщение от Vlast001 Посмотреть сообщение
Раз на раз не приходиться, современное преподавание.. xD
И соответствующие студенты.

Цитата Сообщение от Vlast001 Посмотреть сообщение
Если просто показать, что можно фильтровать данные чтобы это было? Это как запрос в бд? Допустим отобразить таблицу данных где x > 450 это ж будет фильтром? Как что-то такое в pandas сделать?
А прочитать про панду в книге, или хотя-бы на сайтах, где описывается именно Pandas а не решение вашей конкретной задачи мысли не возникло? Тут уж на "современное преподавание" точно не списать.
Фильтровать данные можно по разному. Есть функция filter, есть запрос (ага, как к БД), есть фильтр данных как сигнала с помехами, есть фильтрация данных изображения, есть фрактальная фильтрация. Кто вас знает? Вон у вас между средним и минимум затесалось некое загадочное "Среднеквадратическое значение " - понятие вообще-то говоря из электроники, и вычисляемое весьма не тривиально.
0
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
14.04.2021, 14:23  [ТС]
Цитата Сообщение от passant Посмотреть сообщение
"Среднеквадратическое значение " - понятие вообще-то говоря из электроники, и вычисляемое весьма не тривиально.
Это из теории вероятности и математической статистики. Формула простая, но ее мне нужно не писать с нуля, а использовать pandas вот вам страничка из вики https://ru.wikipedia.org/wiki/... 0%BE%D0%B5

Цитата Сообщение от passant Посмотреть сообщение
Есть функция filter, есть запрос (ага, как к БД), есть фильтр данных как сигнала с помехами, есть фильтрация данных изображения, есть фрактальная фильтрация. Кто вас знает?
Из этого знакомо ток "запрос( ага, как к БД)" Остальное первый раз слышу. Где это все понятным языком прочитать можно? документация в таком случае самый плохой вариант так это просто справочник для тех кто уже в теме давно.
Цитата Сообщение от passant Посмотреть сообщение
А прочитать про панду в книге, или хотя-бы на сайтах, где описывается именно Pandas
Помимо форумов читаю книгу по пандас на этом сайте https://devpractice.ru/pandas-indexing-part3/#p7

Добавлено через 17 минут
Цитата Сообщение от passant Посмотреть сообщение
А вообще-то подумайте, почему у вас вывод df1.values дается в виде строк а не чисел.
Да, нашел в чем проблема была. При считывании файла там есть параметр сепаратор, я туда добавил пробел и заработало. Однако там где я об этом читал, вариант без сепаратора использовался как раз для тех случаев когда вместо ";" или другого символа разделение было разделение через пробелы. Наверное это зависит от версии pandas, хотя кто его знает
0
578 / 411 / 69
Регистрация: 09.01.2018
Сообщений: 1,363
14.04.2021, 14:50
Цитата Сообщение от Vlast001 Посмотреть сообщение
Это из теории вероятности и математической статистики. Формула простая, но ее мне нужно не писать с нуля, а использовать pandas вот вам страничка из вики
Вычисляется элементарно:

Python
1
math.sqrt((df1.x**2).sum()/len(df1))
или вот так
Python
1
np.sqrt ((df1.x**2).mean())
Цитата Сообщение от Vlast001 Посмотреть сообщение
. Наверное это зависит от версии pandas, хотя кто его знает
Нет.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.04.2021, 14:50
Помогаю со студенческими работами здесь

Qt, знакомство
Доброго времени суток! Пытаюсь научиться работать с вышеуказанным. Кроме эротики пока ничего не получается. Во-первых, Qt5 никак не...

Знакомство с Windows 8
Купил сегодня ноут с установленной Windows 8. До этого больше 4 лет рабоатл на Мак Ос( Вопрос следующий - там есть как бы...

Знакомство с Generics
Здравствуйте! Я новичек в Java. Не могу выполнить просто задание. Подскажите, пожалуйста, в чем ошибка. Задача в коде. package...

Знакомство с Linux
Здравствуйте! Ребята, решил я познакомиться с линуксом. Уже собрал под это дело компутер. Этот компутер планирую пустить под...

Знакомство с ассемблером
Такой вопрос: только начал знакомиться с ассемблером, скачал MAsm (мне нужно научиться пока работать именно на нём, т.к. на учебных...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru