teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

追記

2020/11/30 15:41

投稿

ggg3
ggg3

スコア17

title CHANGED
File without changes
body CHANGED
@@ -4,7 +4,7 @@
4
4
  df_test = pd.DataFrame({
5
5
  'a' : ['a-1', 'a-2', '3', '4', 'a-5'],
6
6
  'b' : [10, 20, 30, 40, 50]
7
- }
7
+ })
8
8
  ```
9
9
  ||a|b|
10
10
  |:--|:--:|--:|
@@ -17,6 +17,15 @@
17
17
  a列のインデックス2と3には数字の前に「a-」が無いため付け足したいと思います。
18
18
  以下のようなコードを書いてみたのですが上手くいきません。
19
19
  「a-」が無い行を抽出し、apply関数とlambdaを使って文字列を連結すればできるかと考えたのですがだめでした。
20
+ 以下のメッセージが表示され、dataframeの結果は変わりません。
21
+ ```
22
+ /opt/anaconda3/lib/python3.7/site-packages/ipykernel_launcher.py:1: SettingWithCopyWarning:
23
+ A value is trying to be set on a copy of a slice from a DataFrame.
24
+ Try using .loc[row_indexer,col_indexer] = value instead
25
+
26
+ See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy
27
+ """Entry point for launching an IPython kernel.
28
+ ```
20
29
  どのようにすればいいでしょうか。
21
30
  ```
22
31
  df_test[~df_test['a'].str.contains('a-')]['a'] = df_test[~df_test['a'].str.contains('a-')]['a'].apply(lambda x: 'a-' + x)