質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

0回答

1010閲覧

pythonのデータフレームで合計行を追加したい。

firehiko18

総合スコア37

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

1クリップ

投稿2021/08/11 21:36

売上の列のみ合計して最終行に合計金額を表記させたいです。
df.loc['合計'] = df.sum()と書きましたがうまいこといきません。
また数値は3桁区切りとし右寄せで表記させたいです。
よろしくお願い致します。

df = pd.DataFrame(
data={'分類CD':["1-1","1-3","1-5","2-1","2-2","3-1","3-5"],
'数量':[3,10,100,5,20,15,100],
'単価':[20,2,10,100,20,10,5],
'売上':['60',20,1000,500,400,150,500]}
)
print(df.dtypes)
df.loc['合計'] = df.sum()

結果
分類CD object
数量  int64
単価  int64
売上  object

最終イメージ

分類CD数量単価売上
1-132060
1-310220
1-5100101,000
2-15100500
2-22020400
3-11510150
3-51005500
2,630

使っているツールのバージョンなど補足情報
Windows10
python3.9 64bit

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TakaiY

2021/08/12 01:39

「df.loc['合計'] = df.sum()と書きましたがうまいこといきません。」とありますが、どのようにうまくいかないのですか?
meg_

2021/08/12 02:37

> 売上の列のみ合計して最終行に合計金額を表記させたいです。 > また数値は3桁区切りとし右寄せで表記させたいです。 上記はスプレッドシートで作成するのが向いているかと思いますがpandasで実装したい理由があるのでしょうか?
firehiko18

2021/08/12 10:53

「df.loc['合計'] = df.sum()と書きましたがうまいこといきません。」とありますが、どのようにうまくいかないのですか? ありがとうございます。 以下のような結果になり計算できておりません。 分類CD 数量 単価 売上 0 1-1 3 20 60 1 1-3 10 2 20 2 1-5 100 10 1000 3 2-1 5 100 500 4 2-2 20 20 400 5 3-1 15 10 150 6 3-5 100 5 500 合計 1-11-31-52-12-23-13-5 253 167 60201000500400150500 上記はスプレッドシートで作成するのが向いているかと思いますがpandasで実装したい理由があるのでしょうか? わたしの勉強不足で恐縮ですが、Googleスプレッドシートのことでしょうか? pandsでなくてよいのですがpythonのコードで書きたいです。 よろしくお願い致します。
lehshell

2021/08/14 00:58

'売上':['60',20,1000,500,400,150,500] 売上に文字列と数値が混在していますね。 数値だけにして df.loc['合計'] = ["", "", "", f"{df['売上'].sum():,}"] とすればやりたい結果になるかも
firehiko18

2021/08/14 23:47

売上の部分の' 'の部分は私の記載もれです。申し訳ございません。 合計処理の記載の部分は教えて頂いたコードでできました。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問