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

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

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

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

解決済

AttributeError: 'numpy.int64' object has no attribute 'replace' が解決できません・・

yoichirou
yoichirou

総合スコア29

Python

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

2回答

0評価

0クリップ

291閲覧

投稿2022/01/24 07:48

1.前提・実現したいこと
文字が切り替わったところで切り替わったことを示すフラグを立てたい。

2.発生している問題・エラーメッセージ
ーーーー
df = pd.DataFrame({
'type': ["A", "A", "A", "A", "B", "B", "B", "A"]})

print(df)
print(df.dtypes)
ーーーー
(出力)
type
0 A
1 A
2 A
3 A
4 B
5 B
6 B
7 A
type object
dtype: object

こういったデータ(もともとはCSVなのですが)について、typeの列の隣に列を追加して、そこに「1」を立てたいです。
そこで以下の通り記載しています。

ーーーー
df["change"] = 0

i = 0
df_len = len(df)

for i in range(df_len-1):
if df.iat[i+1, 0] != df.iat[i, 0]:
df.iat[i+1, 1].replace(0, 1)
else:
pass

df
ーーーー
(出力:エラーメッセージ)

AttributeError Traceback (most recent call last)
<ipython-input-122-c7087006c35d> in <module>
4 for i in range(df_len-1):
5 if df.iat[i+1, 0] != df.iat[i, 0]:
----> 6 df.iat[i+1, 1].replace(0, 1)
7 else:
8 pass

AttributeError: 'numpy.int64' object has no attribute 'replace'

ここのエラーがなんだか解決できないです。。
出力イメージとしては以下を想定しています。
(出力)
type change
0 A 0
1 A 0
2 A 0
3 A 0
4 B 1
5 B 0
6 B 0
7 A 1

簡単なことなのかもしれませんが、初心者につきお知恵をお借りできると幸いです。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

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

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

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

Python

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