[英]Adding a number to a column with python
我是python的新手,我將非常感謝以下的一些指導。 我有一個超過500萬行和8列的文本文件,我試圖只為第4列中的每個值添加“15”。
例如:
10 21 34 12 50 111 234 21 7
21 10 23 56 80 90 221 78 90
將改為:
10 21 34 12 **65** 111 234 21 7
21 10 23 56 **95** 90 221 78 90
我下面的腳本允許我隔離列,但當我嘗試向其添加任何數量時,我返回“TypeError:不支持的操作數類型為+:'NoneType'和'int'”
file = open("file.txt")
column = []
for line in file:
column.append(int(line.split("\t")[3]))
print column
任何建議都會很棒。
試試這個讓你入門 - 有許多更好的方法使用庫,但這會向你展示一些更好的文件處理基本方法。 適用於您發布的數據 - 只要文件中的分隔符是雙倍空格(“”)並且所有內容都可以強制轉換為int。 如果不.....
另外 - 請注意啟動腳本的正確方法是:
if __name__ == "__main__":
這是因為如果要創建庫,通常不需要執行任何代碼...
__author__ = 'charlie'
in_filename = "in_file.txt"
out_filename = "out_file.txt"
delimiter = " "
def main():
with open(in_filename, "r") as infile:
with open(out_filename, "w") as outfile:
for line in infile:
ldata = line.split(delimiter)
ldata[4] = str(int(ldata[4]) + 15)
outfile.write(delimiter.join(ldata))
if __name__ == "__main__":
main()
與熊貓:
import pandas as pd
df = pd.read_clipboard(header=None)
df[4] += 15
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.