Pandas 学习笔记-02_行/单元格

筅森魡賤 提交于 2020-01-10 13:06:27
import pandas as pd
d = {'x':100,'y':200,'z':300}
print(d.keys())
print(d.values())
print(d['x'])
s1 = pd.Series(d)
print(s1)
print(s1.keys)
print(s1.data)
import pandas as pd
L1 = [100,200,300]
L2 = ['X','Y','Z']
s1 = pd.Series(L1,index = L2)
print(s1)
print(s1.index)
import pandas as pd

s1 = pd.Series([1,2,3],index = [1,2,3],name = 'A')
s2 = pd.Series([10,20,30],index = [1,2,3],name = 'B')
s3 = pd.Series([100,200,300],index = [1,2,3],name = 'C')

df = pd.DataFrame({s1.name:s1,s2.name:s2,s3.name:s3})
df1 = pd.DataFrame([s1,s2,s3])
print(df)
print(df1)

//索引号不同步,则取并集

import pandas as pd

s1 = pd.Series([1,2,3],index = [1,2,3],name = 'A')
s2 = pd.Series([10,20,30],index = [1,2,3],name = 'B')
s3 = pd.Series([100,200,300],index = [2,3,4],name = 'C')

df = pd.DataFrame({s1.name:s1,s2.name:s2,s3.name:s3})
df1 = pd.DataFrame([s1,s2,s3])
print(df)
print(df1)

 

//NaN:Not a Number 

# 数据区域读取填充数字

原始数据

 预期实现的功能:空格自动填充

import pandas as pd

books = pd.read_excel("C:/Temp/Books.xlsx",skiprows=5,usecols='D:G')
print(books)

 

import pandas as pd
from datetime import date,timedelta

books = pd.read_excel("C:/Temp/Books.xlsx",skiprows=5,usecols='D:G',index_col=None, dtype={'ID':str,'InStore':str,'Date':str})
# print(books)
# print(books['ID'])
# print(type(books))
# books['ID'].at[0]=100
# print(books['ID'])
# 每行加一个月
start = date(2018,1,1)
def add_month(d,month_data):
    year_data = month_data // 12
    m = d.month + month_data % 12
    if m != 12:
        year_data += m // 12
        m = m % 12
    return date(d.year + year_data,m,d.day)
for book in books.index:
    books['ID'].at[book] = book + 1
    books['InStore'].at[book] = 'Yes' if book % 2 == 0 else'No'
#    books['Date'].at[book] = start + timedelta(days=book)  # 每行加天/小时/分钟均可用timedelta(hours/minutes/days=)
#    books['Date'].at[book] = date(start.year + book,start.month,start.day)  # 每行加一年
# 每行加一个月
    books['Date'].at[book] = add_month(start,book)


books.set_index('ID',inplace=True) #设定以ID列为索引
books.to_excel('C:/temp/output1.xlsx')
print(books)
print("Done")

 

import pandas as pd
from datetime import date,timedelta

books = pd.read_excel("C:/Temp/Books.xlsx",skiprows=5,usecols='D:G',index_col=None, dtype={'ID':str,'InStore':str,'Date':str})

# 每行加一个月
start = date(2018,1,1)
def add_month(d,month_data):
    year_data = month_data // 12
    m = d.month + month_data % 12
    if m != 12:
        year_data += m // 12
        m = m % 12
    return date(d.year + year_data,m,d.day)

# 可以实现直接在DataFrame上面修改
for book in books.index:
    books.at[book,'ID'] = book + 1
    books.at[book,'InStore'] = 'Yes' if book % 2 == 0 else'No'
    books.at[book,'Date'] = add_month(start,book)


books.set_index('ID',inplace=True) #设定以ID列为索引
books.to_excel('C:/temp/output1.xlsx')
print(books)
print("Done")

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!