Python dataframe получить значение ячейки

Содержание
  1. Pandas – How to Get Cell Value From DataFrame?
  2. 1. Quick Examples of Get Cell Value of DataFrame
  3. 2. Using DataFrame.loc[] to Get a Cell Value by Column Name
  4. 3. Using DataFrame.iloc[] to Get a Cell Value by Column Position
  5. 4. Using DataFrame.at[] to select Specific Cell Value by Column Label Name
  6. 5.Using DataFrame.iat[] select Specific Cell Value by Column Position
  7. 6. Select Cell Value from DataFrame Using df[‘col_name’].values[]
  8. 7. Get Cell Value from Last Row of Pandas DataFrame
  9. 8. Conclusion
  10. Related Articles
  11. References
  12. You may also like reading:
  13. Naveen (NNK)
  14. Leave a Reply Cancel reply
  15. This Post Has One Comment
  16. Как получить значение из ячейки в PandaS DataFrame
  17. Загрузка набора данных
  18. Способ 1: Извлечение данных с использованием ILOC или индексации
  19. Способ 2: Извлечение данных с использованием IAT
  20. Способ 3: Извлечь данные, используя loc
  21. Метод 4: Извлечение данных, используя на
  22. Метод 5: Извлечение данных с использованием data_frame.values []
  23. Резюме
  24. Читайте ещё по теме:
  25. Как получить значение ячейки в Pandas?
  26. Рассмотрим каждый из этих способов подробнее:
  27. Как получить значение ячейки с помощью методов at и iat ?
  28. Как получить значение ячейки в Pandas с помощью методов loc и iloc ?
  29. Подведем итог!

Pandas – How to Get Cell Value From DataFrame?

You can use DataFrame properties loc[] , iloc[] , at[] , iat[] and other ways to get/select a cell value from a Pandas DataFrame. Pandas DataFrame is structured as rows & columns like a table, and a cell is referred to as a basic block that stores the data. Each cell contains information relating to the combination of the row and column.

Читайте также:  Steam validation rejected свой сервер css

1. Quick Examples of Get Cell Value of DataFrame

If you are in a hurry, below are some of the quick examples of how to select cell values from pandas DataFrame.

 # Below are some quick examples # Using loc[]. Get cell value by name & index print(df.loc['r4']['Duration']) print(df.loc['r4'][2]) # Using iloc[]. Get cell value by index & name print(df.iloc[3]['Duration']) print(df.iloc[3,2]) # Using DataFrame.at[] print(df.at['r4','Duration']) print(df.at[df.index[3],'Duration']) # Using DataFrame.iat[] print(df.iat[3,2]) # Get a cell value print(df["Duration"].values[3]) # Get cell value from last row print(df.iloc[-1,2]) print(df.iloc[-1]['Duration']) print(df.at[df.index[-1],'Duration']) 

Now, let’s create a DataFrame with a few rows and columns and execute some examples and validate the results. Our DataFrame contains column names Courses , Fee , Duration , Discount .

 # Create DataFrame import pandas as pd technologies = < 'Courses':["Spark","PySpark","Hadoop","Python","pandas"], 'Fee' :[24000,25000,25000,24000,24000], 'Duration':['30day','50days','55days', '40days','60days'], 'Discount':[1000,2300,1000,1200,2500] >index_labels=['r1','r2','r3','r4','r5'] df = pd.DataFrame(technologies, index=index_labels) print(df) 
 # Output: Courses Fee Duration Discount r1 Spark 24000 30day 1000 r2 PySpark 25000 50days 2300 r3 Hadoop 25000 55days 1000 r4 Python 24000 40days 1200 r5 pandas 24000 60days 2500 

2. Using DataFrame.loc[] to Get a Cell Value by Column Name

In Pandas, DataFrame.loc[] property is used to get a specific cell value by row & label name(column name). Below all examples return a cell value from the row label r4 and Duration column (3rd column).

 # Using loc[]. Get cell value by name & index print(df.loc['r4']['Duration']) print(df.loc['r4','Duration']) print(df.loc['r4'][2]) 

Yields below output. From the above examples df.loc[‘r4’] returns a pandas Series.

3. Using DataFrame.iloc[] to Get a Cell Value by Column Position

If you wanted to get a cell value by column number or index position use DataFrame.iloc[] , index position starts from 0 to length-1 (index starts from zero). In order to refer last column use -1 as the column position.

 # Using iloc[]. Get cell value by index & name print(df.iloc[3]['Duration']) print(df.iloc[3][2]) print(df.iloc[3,2]) 

This returns the same output as above. Note that iloc[] property doesn’t support df.iloc[3,’Duration’] , by using this notation, returns an error.

Читайте также:  Drawing circles in html

4. Using DataFrame.at[] to select Specific Cell Value by Column Label Name

DataFrame.at[] property is used to access a single cell by row and column label pair. Like loc[] this doesn’t support column by position. This performs better when you wanted to get a specific cell value from Pandas DataFrame as it uses both row and column labels. Note that at[] property doesn’t support negative index to refer rows or columns from last.

 # Using DataFrame.at[] print(df.at['r4','Duration']) print(df.at[df.index[3],'Duration']) 

These examples also yield the same output 40days .

5.Using DataFrame.iat[] select Specific Cell Value by Column Position

DataFrame.iat[] is another property to select a specific cell value by row and column position. Using this you can refer to column only by position but not by a label. This also doesn’t support negative index or column position.

 # Using DataFrame.iat[] print(df.iat[3,2]) 

6. Select Cell Value from DataFrame Using df[‘col_name’].values[]

We can use df[‘col_name’].values[] to get 1×1 DataFrame as a NumPy array, then access the first and only value of that array to get a cell value, for instance, df[«Duration»].values[3] .

 # Get a cell value print(df["Duration"].values[3]) 

7. Get Cell Value from Last Row of Pandas DataFrame

If you wanted to get a specific cell value from the last Row of Pandas DataFrame, use the negative index to point the rows from last. For example, Index -1 represents the last row and -2 for the second row from the last. Similarly, you should also use -1 for the last column.

 # Get cell value from last row print(df.iloc[-1,2]) # prints 60days print(df.iloc[-1]['Duration']) # prints 60days print(df.at[df.index[-1],'Duration']) # prints 60days 

To select the cell value of the last row and last column use df.iloc[-1,-1] , this returns 2500 . Similarly, you can also try other approaches.

8. Conclusion

In this article, you have learned how to get or select a specific cell value from pandas DataFrame using the .iloc[] , .loc[] , .iat[] & .at[] properties. Also, you have learned how to get a specific value from the last row and last row, last column with examples.

References

You may also like reading:

SparkByExamples.com is a Big Data and Spark examples community page, all examples are simple and easy to understand and well tested in our development environment Read more ..

Leave a Reply Cancel reply

This Post Has One Comment

Thanks Larsen for pointing it out. You are right and I have corrected it.

Источник

Как получить значение из ячейки в PandaS DataFrame

Если вы являетесь аналитиком данных или работа с большим количеством данных, вы могли бы возобновить библиотеку Pandas для манипулирования данными. В этом руководстве мы рассмотрим, как мы можем получить значение ячейки из PandaS DataFrame. https://youtu.be/q0hmnrkz3uc Соответствующее Учебное пособие: 5 минут до Пандас Есть 5 способов … Как получить значение из ячейки в PandaS DataFrame Подробнее »

Автор оригинала: Neeraj Sujan.

Если вы являетесь аналитиком данных или работа с большим количеством данных, вы могли бы возобновить библиотеку Pandas для манипулирования данными. В этом руководстве мы рассмотрим, как мы можем получить значение ячейки из PandaS DataFrame.

Похожие учебники: 5 минут до панд

Есть 5 способов извлечения значения из клетки Pandas DataFrame

Загрузка набора данных

Мы рассмотрим вышеуказанные методы путем загрузки образца данных. Я использовал набор данных California CountaSet, который вы можете скачать из этого ссылка .

import pandas as pd data = pd.read_csv('sample_data/california_housing_test.csv')

Давайте увидим столбцы набора данных

Мы видим первые 5 рядов набора данных. Набор данных имеет 9 столбцов. Теперь мы рассмотрим 5 различных методов для извлечения 2-го значения строки колонны широты

Способ 1: Извлечение данных с использованием ILOC или индексации

Мы можем использовать нормальную индексацию извлечения значения.

Поскольку индексация начинается от 0, 1-й индекс используется для получения содержимого для 2-й строки. После извлечения строки мы можем извлечь любое значение столбца, которое мы хотим. В нашем случае мы хотели получить ценность широты. Мы получаем следующий вывод.

Способ 2: Извлечение данных с использованием IAT

Мы не будем смотреть на другой метод для извлечения значения широты из 2-го ряда.

Мы можем позвонить в IAP Способ данных PandaFrame для получения значения ячейки. IAP Значение называется с помощью индекса строки и индекса столбца в качестве аргумента. В нашем примере широта является индекс 1-го столбца, а для 2-го ряда мы будем использовать 1-й индекс.

Способ 3: Извлечь данные, используя loc

Мы можем использовать метод LOC, чтобы получить значение. Метод LOC в отличие от метода IOC, может использоваться путем передачи в строке в качестве аргумента, если значения индекса являются строками. В нашем примере, поскольку все индексы являются числовыми значениями, мы можем сделать следующее

Метод 4: Извлечение данных, используя на

Четвертый способ извлечения значения из ячейки использует на метод. на Метод принимает индекс строки в качестве аргумента и имени столбца в качестве второго аргумента.

Метод 5: Извлечение данных с использованием data_frame.values []

Последний способ извлечения значения из определенной ячейки – сначала преобразовать раму в серию, используя имя столбца, мы заинтересованы в получении значения, а затем преобразования серии в список, используя свойство значений. Затем мы можем использовать обычную индексацию строки, чтобы получить значение из определенной строки.

Резюме

В этом посте в блоге мы увидели 5 способов извлечения значения из PandaFrame Pandas. В зависимости от случая использования мы можем использовать любой из вышеупомянутых 5 способов, чтобы получить значение из ячейки.

Читайте ещё по теме:

Источник

Как получить значение ячейки в Pandas?

Самый быстрый и эффективный способ получить значение ячейки в Pandas — это воспользоваться одним из методов: at или iat . В данном случае Вы получите одно скалярное значение, расположенное в обозначенной ячейке. Кроме того, Вы можете использовать методы loc и iloc — они работают медленней, но позволяют получить несколько значений из выбранного диапазона ячеек.

Рассмотрим каждый из этих способов подробнее:

Как получить значение ячейки с помощью методов at и iat ?

Сразу перейдем к практическому примеру. Из приведенной ниже таблицы «bd» выведем на экран Ванину оценку по математике:

Исходная таблица bd (Как получить значение ячейки в Pandas?)

Узнаем оценку с помощью метода at :

Для получения значения ячейки в квадратных скобках перечисляем названия строки и столбца, на пересечении которых находится искомая ячейка.

Узнаем оценку с помощью метода iat :

Мы получили значение 5, находящееся на пересечении строки индексом 2 и столбца с нулевым индексом.

Чем отличаются методы at и iat ?

Думаю, из приведенных выше примеров Вы догадались, что метод at выводит значение ячейки по названиям строки и столбца, а метод iat — по их индексам (нумерация индексов начинается с нуля).

Как получить значение ячейки в Pandas с помощью методов loc и iloc ?

Методы loc и iloc требуют больше ресурсов для выполнения, но позволяют получить сразу несколько значений. Рассмотрим работу этих методов на практическом примере. Из таблицы bd , содержащей оценки учеников по разным предметам, сначала выведем на экран Машину оценку по физике, а затем — оценки Маши, Саши и Вани по физике:

Таблица bd

Получим значение ячейки / диапазона ячеек с помощью метода loc :

1. Выведем на экран Машину оценку по физике:

Для вывода значения определенной ячейки, в квадратных скобках нужно указать имена строки и столбца.

2. Выведем на экран оценки оценки Маши и Вани по рисованию и физике:

bd.loc[['Маша', 'Ваня'], 'Рисование':'Физика']

Так как искомые строки не являются соседними, то мы не можем использовать срез для их выбора, поэтому просто перечислим названия этих строк в квадратных скобках. Для получения значений из столбцов воспользуемся срезом.

Получим значение ячейки / диапазона ячеек с помощью метода iloc :

1. Выведем на экран Машину оценку по физике:

Для вывода значения определенной ячейки, в квадратных скобках нужно указать индексы строки и столбца. В нашем случае искомое значение находится на пересечении нулевой строки и столбца с индексом 2.

2. Выведем на экран оценки оценки Маши и Вани по рисованию и физике :

В результате получим таблицу:

0, 2 — это индексы искомых строк;

1:3 — срез по столбцам, который позволит получить значения 1 и 2 столбца (крайнее правое значение 3 в срезе не учитывается).

Чем отличаются методы loc и iloc ?

Метод loc выводит значение ячейки или группы ячеек по названиям строк и столбцов, а метод iloc — по их индексам (нумерация индексов начинается с нуля).

Подведем итог!

Если Вам нужно получить значение только одной ячейки из Pandas таблицы, рекомендую использовать метод at для поиска ячейки по названиям строки и столбца, либо метод iat для поиска по индексам строки и cтолбца.

Для выбора сразу нескольких значений из таблицы Pandas используйте метод loc (для поиска ячеек по названиям строк и столбцов), либо iloc (для поиска значений по индексам строк и столбцов). Эти методы также подходят для получения значения одной ячейки, однако они проигрывают в скорости методам at и iat .

У нас появился Telegram-канал для изучающих Python! Присоединяйтесь: вместе «питонить» веселее! 😉 Ссылка на канал: «Кодим на Python!»

Источник

Оцените статью