ホームページ > バックエンド開発 > Python チュートリアル > パンダは Python で Excel 操作戦略を読み取り、変更します (コード例)

パンダは Python で Excel 操作戦略を読み取り、変更します (コード例)

不言
リリース: 2019-02-20 14:36:23
転載
8098 人が閲覧しました

この記事の内容は、Pandas による Python による Excel の読み取りと変更の操作ガイド (コード例) に関するもので、一定の参考価値があります。必要な友人は参考にしてください。お役に立てれば幸いです。

環境: python 3.6.8

例として特定の Miser 番号を取り上げてみましょう:

パンダは Python で Excel 操作戦略を読み取り、変更します (コード例)

パンダは Python で Excel 操作戦略を読み取り、変更します (コード例)

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

ここでは、Excel を読み取るために pd.read_excel() 関数を使用します。read_excel() の API を見てみましょう。ここでは、一部の一般的なもののみをインターセプトします。使用パラメータ:

pd.read_excel(io, sheet_name=0, header=0, names=None, index_col=None, usecols=None)
ログイン後にコピー
io: 明らかに、これは Excel ファイル

のパス名文字列です (中国語がある場合は、python2##) # Laotie は decode() を使用して unicode 文字列 ) にデコードする必要があります 例:

>>> pd.read_excel('例子'.decode('utf-8))
ログイン後にコピー
sheet_name: 指定されたものを返しますsheet
sheet_nameNone として指定されている場合、シート全体が返されます。 複数のシートを返す必要がある場合は、
sheet_name ## を返すことができます。 #['sheet1', 'sheet2'] のようにリストとして指定します。## の名前文字列またはインデックスに基づいて、選択した sheet

を指定できます。 #sheet <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">&gt;&gt;&gt; # 如: &gt;&gt;&gt; pd.read_excel('1.xlsx', sheet_name=0) &gt;&gt;&gt; pd.read_excel('1.xlsx', sheet_name='Sheet1') &gt;&gt;&gt; # 返回的是相同的 DataFrame</pre><div class="contentsignin">ログイン後にコピー</div></div>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
ログイン後にコピー
いつか Tiger がレベルに達するまで、このように変更できます。もちろん、
.iloc
または # を使用することもできます##.loc

オブジェクト<div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">&gt;&gt;&gt; # 读取文件 &gt;&gt;&gt; data = pd.read_excel(&quot;1.xlsx&quot;, sheet_name=&quot;Sheet1&quot;) &gt;&gt;&gt; # 找到 等级 这一列,再在这一列中进行比较 &gt;&gt;&gt; data['等级'][data['名字'] == '泰格尔'] += 1 &gt;&gt;&gt; print(data)</pre><div class="contentsignin">ログイン後にコピー</div></div>見てください!彼はアップグレードされました! ! <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">&gt;&gt;&gt; data      名字   等级 属性1   属性2  天赋 0  艾欧里娅  100  自然     冰  29 1   泰格尔   81   电    战斗  16 2  布鲁克克  100   水  None  28</pre><div class="contentsignin">ログイン後にコピー</div></div>これを保存します

data.to_excel('1.xlsx', sheet_name='Sheet1', index=False, header=True)
ログイン後にコピー

index: デフォルトは

True

です。行インデックスを追加するかどうかは、上の図に移動するだけです。

左は
Falseパンダは Python で Excel 操作戦略を読み取り、変更します (コード例)、右は
True
ヘッダー: デフォルトは True です。柱マークを付けて絵を描いてみよう!
左側は False、右側は
Trueパンダは Python で Excel 操作戦略を読み取り、変更します (コード例)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    炎火
ログイン後にコピー
新しい行データ、番号ここでの行の ID 値は、Excel の行に自動的に追加される
data.loc[行の番号] = [値 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()function
>>> # 删除列, 需要指定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)
ログイン後にコピー

を使用できます。

以上がパンダは Python で Excel 操作戦略を読み取り、変更します (コード例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:segmentfault.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート