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

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

14.04.2021, 11:46. Показов 2456. Ответов 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
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru