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

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

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

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

Q&A

2回答

579閲覧

glob 2つの差が?なら出力するプログラム!

退会済みユーザー

退会済みユーザー

総合スコア0

Python

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

1グッド

0クリップ

投稿2019/01/15 02:05

コード for file in glob.glob("a/*.csv"): ans = [] for i in range(0, len(data)): for j in range(i + 1, len(data)): if abs(data[i] - data[j]) < 6: ans.append([data[i], data[j]]) print(ans)

データ数が多くなった時にもっとスマートに描きたいです!
①1つのcsvごとに出力数とanswerをまとめる。
a/1.csvのanswerと出力数
a/2.csvのanswerと出力数
a/*.csvのanswerと出力数をだすプログラムをかくにはどうしたらいいでしょうか。

②*/.csvについても同等の作業をしたいんです!
a/
.csvのanswerと出力数
b/*.csvのanswerと出力数
//csvのanswerと出力数をだすプログラムをかくにはどうしたらいいでしょうか。
解答お願いします。

naikoru👍を押しています

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

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

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

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

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

y_waiwai

2019/01/15 02:27

えーと、answer とは何でしょうか。提示のコードのなにを指すんでしょうか。
firedfly

2019/01/15 06:48

こんにちは。 同一サイト内で時間差マルチポストするのは確かに有効です。 が、まったく同じ質問文で、y_waiwaiさんの追記・修正依頼を無視し続けるなら 「自分ではなにも考えず、粘着している」のと同じです。信用を失うばかりですよ。 下の追記・修正をお願いします。 ・タイトルを具体的に希望する内容にする ・(改善要望なら)エラーの出ない実行できるコードを提示する ・なにをするためのプログラムなのかを説明する ・フォルダ構成がどうなっているのか説明する ・csvを読み込むならどんなデータが格納されているのか説明する ・データ数とanswerと出力数がなにを意味するのか説明する
yamato_user

2019/01/25 10:01

マイナス評価記録達成してませんかね?
guest

回答2

0

ああ、なんだか、真面目に書いて損した気分(https://teratail.com/questions/168709)。
先にも書きましたが、プログラムというのは、目的の結果を得るために、するべきことをするべき順番に並べたものです。
まずは、日本語で、するべきことを書き並べましょう。そして、プログラミング言語と1:1で変換できるまで、細分化していきましょう。

「15分調べてもわからないことは、teratailで質問しましょう!」とか書いてありますが、私は、ウェブ上のコミュニティで質問をするのは最終手段だと考えます。ネットワークの向こうにいる人は、質問をする人となんの情報も共有していません。解答は、知識だけでなく、共有する情報によってなされます。質問をする人が情報を提示できなければ、回答することすら困難です。そして、往々にして、情報の共有ができていません。
あなたの投稿の場合、次の情報が共有されていません。

  • 現在できていること
  • 現在できていることと、望んでいるものの差異
  • 代表的な望んでいる結果
  • 入力と出力の例
  • 「スマート」の定義(どんな状態を「スマート」と考えており、現在のものがスマートでない理由)

ここに提示されているコードは、動かないですよね?ans = [] のところで、IndentationError: expected an indented block が出るはずです。そういう「現在できていること」の情報が提示されていません。また、他の投稿では、テキストファイルから内容をコード中に読み取る方法や、CSV を分割して配列とする方法もお尋ねのようですが、そういったことができているコードではありません。いったい、今できているのは、どんなことなのでしょうか。
「a/.csv」とか「/.csv」とか、どこにある CSV ファイルなのかという情報を、どのようにしてプログラムに与えるのでしょうか。その情報、つまり望んでいるものが提示されていません。
「a/1.csv の answer と出力数」と書かれていますが、answer とはなんですか。コード中には ans という変数が使われていますが、これのことでしょうか。また、「出力数」とはなんでしょうか。ans は1回しか出力していませんので、毎回1でしょうか。

ここは、本来プログラムを提示するところではありませんが、プログラムは提示しておきます。
プログラム コードへは、ご自分で変換して下さい。

# Python 疑似コード import glab from os import path CSV ファイルを列挙するディレクトリを取得(詳細不明)→enum_dir という変数で参照する enum_dir と '*.csv' を連結する→enum_dir という変数で参照する enum_dir をglab する→csv_list という変数で参照する csv_list の内容をループする→file という変数で参照する file を開く→f という変数で参照する 変数 answer を list 型として初期化する f の先頭から最後まで、1行ずつ読み取る→line という変数で参照する line を','で分割する→data という変数で参照する data の数を調べる→count という変数で参照する count-1だけループする→インデックスとして index という変数で参照する data[idx] を整数値に変換する→v1 という変数で参照する data[idx+1] を整数値に変換する→v2 という変数で参照する v1 と v2 の差が 5 未満? answer に追加する file と answer と出力数を表示する(詳細不明) f を閉じる

投稿2019/01/15 10:57

Q71

総合スコア995

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

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

0

擬似コードだけ書かれてもわからないですよ

投稿2019/01/25 07:50

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

Q71

2019/01/26 01:35

擬似コードがわからないのではなく、 「コンピュータに対して、その場に応じてどのような指示を出さなければならないか、わからない」 でしょ。それを擬似コードにしました。擬似コードは実際のPythonコードと1:1で対応しています。「どうしたい時にどのようなコードを書く」ことがわかっていれば、ちゃんとコードに書き直せます。擬似コードを任意の言語のコードに直せないなら、その言語の基礎構造を勉強してください。
退会済みユーザー

退会済みユーザー

2019/01/26 03:56

それが難しいからみなさん聞いてるんでしょ!
Q71

2019/01/26 07:44

いいえ、違います。おおよその方は、「何をすべきか」「他にどのような方法があるか」がわからないのです。 っていうか、他の、すぐに回答が得られている質問と自分の質問を見比べたら、自分の質問の何が足りていないか気づけないですか? 自分の状況を説明してください。 自分の考えた過程を説明してください。 自分が欲しい結果を説明してください。 今得ている結果をコピペしてください。 自分が考えている「期待と異なる原因」があれば、記述してください。 最後に、1時間くらいおいてから、「一緒にいない人がわかるか?」を確認してください。 できれば、周りの人にまず聞いてください。そこで補足しなければならなかったら、ネットでも必ず補足しなければなりません。私は全く違う業界にいる人を相手に「この質問の意味がわかるか?」と聞いてから質問を投稿していました。質問に答えてもらうためには、コミュニケートできなければなりません。あなたの質問は、必要な情報が足りなさ過ぎます。
退会済みユーザー

退会済みユーザー

2019/01/26 07:46

非公開で話すなら全部載せるんですけxどね
Q71

2019/01/26 09:59

載せられないところに解決に必要な情報があるなら、その問題は公共の場では解決できないってことですよ。 「大宮駅への道順を教えてください」と問われたら、答えられますか?あなたが公開されている情報では埼玉県にお住まいのようですが、散歩中にすれ違った人に問われたら、答えられるでしょう。では、私が、今、この場で尋ねたら、どうでしょう?「兵庫県」ということは公開していますが、北部と南部で全く異なります。また、私が、今現在、本当に兵庫県にいるかどうかは、私にしかわかりません。あなたが出されていない情報、他の人が何度も尋ねているのは、そういう必要不可欠な情報です。 ですから、まずは、相手が答えられなくても、周りの人に尋ねてください。仕事ならチームで問題を共有するため、授業なら教師に自分がわからないところを伝えるためです。プログラムの前に、ウェブで質問する方法を知ってください。15分調べてわからないから尋ねる、その前に、答えが得られる尋ね方を知っていなければなりません。
退会済みユーザー

退会済みユーザー

2019/01/26 10:00

載せられないところに解決に必要な情報があるなら、その問題は公共の場では解決できないってことですよ。 「大宮駅への道順を教えてください」と問われたら、答えられますか?あなたが公開されている情報では埼玉県にお住まいのようですが、散歩中にすれ違った人に問われたら、答えられるでしょう。では、私が、今、この場で尋ねたら、どうでしょう?「兵庫県」ということは公開していますが、北部と南部で全く異なります。また、私が、今現在、本当に兵庫県にいるかどうかは、私にしかわかりません。あなたが出されていない情報、他の人が何度も尋ねているのは、そういう必要不可欠な情報です。 ですから、まずは、相手が答えられなくても、周りの人に尋ねてください。仕事ならチームで問題を共有するため、授業なら教師に自分がわからないところを伝えるためです。プログラムの前に、ウェブで質問する方法を知ってください。15分調べてわからないから尋ねる、その前に、答えが得られる尋ね方を知っていなければなりません。
退会済みユーザー

退会済みユーザー

2019/01/26 10:03

新幹線2本乗ればいいんです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問