>백엔드 개발 >파이썬 튜토리얼 >Pandas는 Python에서 Excel 작업 전략을 읽고 수정합니다(코드 예).

Pandas는 Python에서 Excel 작업 전략을 읽고 수정합니다(코드 예).

不言
不言앞으로
2019-02-20 14:36:238106검색

이 문서의 내용은 Python에서 Pandas의 Excel 작업 가이드(코드 예제)를 읽고 수정하는 내용입니다. 필요한 친구들이 참고할 수 있기를 바랍니다.

환경: python 3.6.8

특정 Miser 번호를 예로 들어 보겠습니다.

Pandas는 Python에서 Excel 작업 전략을 읽고 수정합니다(코드 예).

Pandas는 Python에서 Excel 작업 전략을 읽고 수정합니다(코드 예).

>>> pd.read_excel('1.xlsx', sheet_name='Sheet2')
     名字   等级 属性1   属性2  天赋
0  四九幻曦  100  自然  None  21
1  圣甲狂战  100  战斗  None   0
2  时空界皇  100   光    次元  27

여기서 pd.read_excel() 함수를 사용하여 Excel을 읽습니다. , read_excel() 메소드의 API를 살펴보십시오. 다음은 일반적으로 사용되는 매개변수 중 일부입니다: pd.read_excel()函数来读取excel,来看一下read_excel()这个方法的API,这里只截选一部分经常使用的参数:

pd.read_excel(io, sheet_name=0, header=0, names=None, index_col=None, usecols=None)
io:很明显, 是excel文件的路径+名字字符串

(有中文的话python2的老铁需要使用decode()来解码成unicode字符串)
例如:

>>> pd.read_excel('例子'.decode('utf-8))
sheet_name:返回指定的sheet
如果将sheet_name指定为None,则返回全表
如果需要返回多个表, 可以将sheet_name指定为一个列表, 例如['sheet1', 'sheet2']

可以根据sheet的名字字符串或索引来值指定所要选取的sheet

>>> # 如:
>>> pd.read_excel('1.xlsx', sheet_name=0)
>>> pd.read_excel('1.xlsx', sheet_name='Sheet1')
>>> # 返回的是相同的 DataFrame
header:指定数据表的表头,默认值为0, 即将第一行作为表头
usecols:读取指定的列, 也可以通过名字或索引值
>>> # 如:
>>> pd.read_excel('1.xlsx', sheet_name=1, usecols=['等级', '属性1'])
>>> pd.read_excel('1.xlsx', sheet_name=1, usecols=[1,2])
>>> # 返回的是相同的 DataFrame

直到某一天泰格尔升了一级, 可以这样改一下, 当然用.iloc.loc对象都可以

>>> # 读取文件
>>> data = pd.read_excel("1.xlsx", sheet_name="Sheet1")

>>> # 找到 等级 这一列,再在这一列中进行比较
>>> data['等级'][data['名字'] == '泰格尔'] += 1
>>> print(data)

LOOK!他升级了!!

>>> data
     名字   等级 属性1   属性2  天赋
0  艾欧里娅  100  自然     冰  29
1   泰格尔   81   电    战斗  16
2  布鲁克克  100   水  None  28

现在我们将它保存

data.to_excel('1.xlsx', sheet_name='Sheet1', index=False, header=True)
index:默认为True, 是否加行索引, 直接上图吧!
Pandas는 Python에서 Excel 작업 전략을 읽고 수정합니다(코드 예).
左为False, 右为True
header:默认为True, 是否加列标, 上图吧!
Pandas는 Python에서 Excel 작업 전략을 읽고 수정합니다(코드 예).左为False, 右为True
io, sheet_name参数用法同函数pd.read_excel()

如果我们多捕捉几只或者多加几种属性怎么办呢?这里给出参考:

新增列数据:
data['列名称'] = [值1, 值2, ......]
>>> data['特性'] = ['瞬杀', 'None', '炎火']
>>> data
     名字   等级 属性1   属性2  天赋    特性
0  艾欧里娅  100  自然     冰  29    瞬杀
1   泰格尔   80   电    战斗  16  None
2  布鲁克克  100   水  None  28    炎火

新增行数据,这里行的num为excel中自动给行加的id数值
data.loc[行的num] = [值1, 值2, ...], (注意与.iloc的区别)

>>> data.loc[3] = ['小火猴', 1, '火', 'None', 31, 'None']
>>> data
     名字   等级 属性1   属性2  天赋    特性
0  艾欧里娅  100  自然     冰  29    瞬杀
1   泰格尔   80   电    战斗  16  None
2  布鲁克克  100   水  None  28    炎火
3   小火猴    1   火  None  31  None

说完了增加一行或一列,那怎样删除一行或一列呢?可以使用.drop()

>>> # 删除列, 需要指定axis为1,当删除行时,axis为0
>>> data = data.drop('属性1', axis=1) # 删除`属性1`列
>>> data
     名字   等级   属性2  天赋    特性
0  艾欧里娅  100     冰  29    瞬杀
1   泰格尔   80    战斗  16  None
2  布鲁克克  100  None  28    炎火
3   小火猴    1  None  31  None

>>> # 删除第3,4行,这里下表以0开始,并且标题行不算在类, axis用法同上
>>> data = data.drop([2, 3], axis=0)
>>> data
     名字   等级 属性2  天赋    特性
0  艾欧里娅  100   冰  29    瞬杀
1   泰格尔   80  战斗  16  None

>>> # 保存
>>> data.to_excel('2.xlsx', sheet_name='Sheet1', index=False, header=True)
io: 물론 그렇습니다. excel 파일 + 이름 문자열
(중국어를 사용하는 경우 python2 베테랑은 decode()를 사용하여 유니코드 문자열로 디코딩해야 합니다. )

예:

rrreee
sheet_name: 지정된 시트를 반환합니다.🎜sheet_nameNone, 전체 테이블 반환🎜여러 테이블을 반환해야 하는 경우 <code>sheet_name을 목록으로 지정하면 됩니다. 예를 들어 ['sheet1', 'sheet2']🎜 에 따라 반환할 수 있습니다. >sheet code>의 이름 문자열 또는 sheet🎜
rrreee
header를 지정하는 인덱스: 데이터 테이블의 헤더를 지정하며 기본값은 0입니다. 즉, 첫 번째 행은 Header입니다.
usecols: 지정된 열을 읽거나 이름 또는 인덱스 값으로 읽습니다.
rrreee🎜언젠가 Tiger가 수준으로 올라갈 때까지 이렇게 변경할 수 있습니다. 물론 .iloc.loc 객체를 사용해도 됩니다🎜rrreee🎜LOOK! 그는 업그레이드되었습니다! ! 🎜rrreee🎜이제 저장합니다🎜rrreee
index: 기본값은 True입니다. 행 인덱스를 추가할지 여부는 위 그림으로 이동하세요! 🎜 blockquote>
왼쪽은 False이고, 오른쪽은 True입니다.
헤더: 기본값은 True입니다. 열 레이블을 추가하려면 위 그림을 참조하십시오! 🎜에 왼쪽은 False이고 오른쪽은 True
이며 io, sheet_name 매개변수 사용법은 함수 pd.read_excel()
🎜동물을 몇 마리 더 포획하거나 속성을 몇 개 더 추가하면 어떨까요? 참조는 여기에 제공됩니다: 🎜
새 열 데이터: 🎜data['column name'] = [value 1, value 2, ...]
rrreee🎜새 행 데이터, 여기서 행 num은 ID입니다. excel🎜data.loc의 행에 자동으로 추가된 값[the num of the row] = [value 1, value 2, ...], (.iloc와의 차이점에 유의하세요)🎜 rrreee🎜 행이나 열을 추가한 후 행이나 열을 삭제하는 방법은 무엇입니까? .drop() 함수를 사용할 수 있습니다🎜rrreee🎜🎜

위 내용은 Pandas는 Python에서 Excel 작업 전략을 읽고 수정합니다(코드 예).의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 segmentfault.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제