0% found this document useful (0 votes)
7 views16 pages

Create and Manipulate Pandas DataFrames

The document provides a comprehensive guide on creating and manipulating pandas DataFrames in Python. It covers various methods for creating DataFrames, including from lists, dictionaries, and numpy arrays, as well as how to insert, rename, and delete rows and columns. Additionally, it explains data extraction techniques and attributes of DataFrames, along with CSV file export and import functionalities.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views16 pages

Create and Manipulate Pandas DataFrames

The document provides a comprehensive guide on creating and manipulating pandas DataFrames in Python. It covers various methods for creating DataFrames, including from lists, dictionaries, and numpy arrays, as well as how to insert, rename, and delete rows and columns. Additionally, it explains data extraction techniques and attributes of DataFrames, along with CSV file export and import functionalities.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Dataframe Creation

Syntax:

A python DataFrames can be created using the following syntax:

<pandas>.DataFrame (<data>,<index>,<columns>, <dtype>,<copy>)

Data Data content like tuple, list, dict, ndarray.

Index Index values must be unique and hashable , same length as data. If index not
specified, default is 0 to n – 1 i.e. [Link](n)
columns Column labels, the optional default syntax is [Link](n). This is only true if
no index is passed.
dtype Dtype is for data type. If none, data type will be automatically inferred.

Copy Copy data. Default false

Dataframe can be created using various ways:

1. empty dataframe

2. list

3. series

4. dictionaries

5. numpy array

6. list of dictionaries

7. dictionary of lists

8. dictionary of series

import pandas as pd

import numpy as np

#1. empty dataframe

df=[Link]()

print(df)

#2. list

x=[1,2,3,4]
y=[5,6,7,8]

df1=[Link]([x,y])

print(df1)

#numpy array

n1=[Link]([10,20,30,40])

n2=[Link](101,110,2)

df2=[Link]([n1,n2])

#print(df2)

#Series

s1=[Link]([1,2,3,4,5],index=[100,101,102,103,104])

s2=[Link]([6,7,8,9],index=[100,101,102,103])

df3=[Link]({"C1":s1,"C2":s2})

print(df3)

#Dictionary of lists

d1={"C1":[1,2,3,4],"C2":[5,6,7,8]}

df4=[Link](d1,index=[100,101,102,103])

print(df4)
#List of Dictionaries

d2=[{"C1":10,"C2":45},{"C1":45,"C3":56},{"C2":78,"C4":56}]

df5=[Link](d2)

print(df5)

#Dictionary of Series

d1={"C1":[Link]([1,2,3,4],index=[100,101,102,103]),

"C2":[Link]([5,6,7],index=[100,101,104])}

df6=[Link](d1)

print(df6)
#insertion
import pandas as pd

sales=[Link]({"2014":[100.5,150.8,200.9,30000,40000],

"2015":[12000,18000,22000,30000,45000],

"2016":[20000,50000,70000,100000,125000],

"2017":[50000,60000,70000,80000,90000]},

index=["Madhu","Kusum","Kinsuk","Ankit","Shruti"])

print(sales)

#new row insertion


[Link]["Avi"]=[40000,50000,60000,70000]

print(sales)

#new column insertion at end


sales["2018"]=[10000,20000,30000,40000,50000,60000]

print(sales)
#new column insertion at particular index with same value
[Link](2,"2019",20000)

print(sales)

#new column insertion at particular index with different values


[Link](4,"2020",[1000,2000,20000,4000,50000,7000])

print(sales)

#Renaming column
[Link]({"2020":"2021","2019":"2022"},axis=1,inplace=True)

print(sales)

#OR

[Link]({"2020":"2021","2019":"2022"},axis="columns",inplace=True)

print(sales)

#OR

[Link](columns={"2020":"2021","2019":"2022"},inplace=True)

print(sales)

#OR

sales=[Link]({"2020":"2021","2019":"2022"},axis=1)

print(sales)
#Rename rows
[Link]({"Madhu":"Abhimanyu","Kusum":"Gargi"},axis=0,inplace=True)

print(sales)

#OR

[Link]({"Madhu":"Abhimanyu","Kusum":"Gargi"},axis="index",inplace=True)

print(sales)

#OR

[Link](index={"Madhu":"Abhimanyu","Kusum":"Gargi"},inplace=True)

print(sales)

#OR

sales=[Link]({"Madhu":"Abhimanyu","Kusum":"Gargi"},axis=0)

print(sales)
#Deletion
import pandas as pd

sales=[Link]({"2014":[100.5,150.8,200.9,30000,40000],

"2015":[12000,18000,22000,30000,45000],

"2016":[20000,50000,70000,100000,125000],

"2017":[50000,60000,70000,80000,90000]},

index=["Madhu","Kusum","Kinsuk","Ankit","Shruti"])

print(sales)

#column deletion

[Link](["2017","2016"],axis=1,inplace=True)

#OR

#[Link](columns="2016",inplace=True)

#Or

[Link]("2016",axis="columns",inplace=True)

print(sales)

# To delete permanently

sales=[Link]("2015",axis="columns")

#Row deletion

[Link](index=["Madhu","Ankit"],inplace=True)

#OR

[Link](["Madhu","Ankit"], axis=index, inplace=True)

#OR

[Link](["Madhu","Ankit"], axis=0, inplace=True)

print(sales)

#To delete permanently

sales=[Link](["Kusum","Shruti"])

print(sales)
#Extraction through row index/column index and slicing
import pandas as pd

sales=[Link]({"2014":[100.5,150.8,200.9,30000,40000],

"2015":[12000,18000,22000,30000,45000],

"2016":[20000,50000,70000,100000,125000],

"2017":[50000,60000,70000,80000,90000]},

index=["Madhu","Kusum","Kinsuk","Ankit","Shruti"])

print(sales)

# one column though index

print(sales[“2015”])

# more than one column indexes

print(sales[["2016","2014"]])

# one row index

print([Link][“Madhu”])
# more than one row index

print([Link][["Ankit","Madhu"]])

# all rows particular column through slicing

print([Link][:,"2014":"2016"])

# all columns particular rows through slicing

print([Link]["Madhu":"Kinsuk",:])

# more than one row and particular column through index

print([Link][["Kusum","Shruti"],"2016"])

# more than one column and one column through index

print([Link]["Kinsuk",["2014","2016"]])

# positional index

print([Link][1:3,1:3])
#Extraction through data
Syntax:
1. [Link] [condition/expression/criteria, column list]
OR
2. Dataframename [column list] [condition/expression/criteria]
Note:
1. If expressions are more than one, then each expression must be enclosed in round small brackets
and combine expressions using logical operator. (&/|)
2. if column list contains only one column then it will be mention without square brackets and if
these are more than one then enclosed in square brackets and separated each column by
comma (,).
3. In an expression, column name will be specified along with dataframe name and in column list it
will be mentioned with dataframe name.
import pandas as pd
sales=[Link]({"2014":[100.5,150.8,200.9,30000,40000],
"2015":[12000,18000,22000,30000,45000],
"2016":[20000,50000,70000,100000,125000],
"2017":[50000,60000,70000,80000,90000]},
index=["Madhu","Kusum","Kinsuk","Ankit","Shruti"])
print(sales)
'''to display of those sales details whose sales are less than or equal to 70000
in the year 2017.
'''
print([Link][sales["2017"]<=70000,"2014":"2017"])
#OR
print([Link][sales["2017"]<=70000,:])
#OR
print([Link][sales["2017"]<=70000,["2014","2015","2016","2017"]])
#OR
print(sales[["2014","2015","2016","2017"]][sales["2017"]<=70000])
#OR
print(sales[sales["2017"]<=70000])
#OR
print(sales[:][sales["2017"]<=70000])
#OR
print([Link][sales["2017"]<=70000])

''' To display sales details in the year 2014 and 2016 where sales are in
between 20000 and 30000 in the year 2015 '''
print([Link][(sales["2015"]>=20000)&(sales["2015"]<=30000),["2014","2016"]])
#or
print(sales[["2014","2016"]][(sales["2015"]>=20000)&(sales["2015"]<=30000)])
Data Frame Attributes
import pandas as pd
sales=[Link]({"2014":[100.5,150.8,200.9,30000,40000],
"2015":[12000,18000,22000,30000,45000],
"2016":[20000,50000,70000,100000,125000],
"2017":[50000,60000,70000,80000,90000]},
index=["Madhu","Kusum","Kinsuk","Ankit","Shruti"])
print(sales)
print([Link])
print([Link])
print([Link])
[Link]=["A","b","c","d","e"]
print(sales.T)
print([Link])
print([Link])
print([Link])

20
#CSV file
#Export dataframe
sales.to_csv("[Link]",header=False,index=False,sep="*")
#Import csv to dataframe
df2=pd.read_csv("[Link]",sep="*",names=["a","b","c","d"])
print(df2)

#Iteration
for x,y in [Link]():
print(x,y)
for x,y in [Link]():
print(x)
print(y)

You might also like