对于一个项目,我想创建一个脚本,该脚本允许用户多次输入值(例如,以厘米为单位的值)。我为此考虑了一个While循环。
这些值需要存储在一个数据框中,该数据框将用于生成这些值的图形。
同样,用户没有可以输入的最大条目数,因此必须在每个条目(例如M1,M2,M3…Mn)中生成保存值的变量的名称。但是,数据框将仅包含一行(仅在用户输入值的特定情况下)。
因此,我的问题可以归结为:
如何创建一个带有熊猫的数据框,其中脚本会为测量生成自己的列名,例如M1,M2,M3,…Mn,以便存储所有值。
我现在无法访问我的代码,但是我创建了一个While循环,该循环允许用户输入值,但是我被卡在数据框和列部分。
任何帮助将不胜感激!
最佳答案
我同意@mischi,在没有其他上下文的情况下,熊猫看似矫kill过正,但这是创建您描述的内容的另一种方法...
这段代码提出了一种使用while
循环和input()
收集值的方法(您的while
循环可能很相似)。
colnames = []
inputs = []
counter = 0
while True:
value = input('Add a value: ')
if value == 'q': # provides a way to leave the loop
break
else:
key = 'M' + str(counter)
counter += 1
colnames.append(key)
inputs.append(value)
from pandas import DataFrame
df = DataFrame(inputs, colnames) # this creates a DataFrame with
# a single column and an index
# using the colnames
df = df.T # This transposes the DataFrame to
# so the indexes become the colnames
df.index = ['values'] # Sets the name of your row
print(df)
该脚本的输出如下所示:
Add a value: 1
Add a value: 2
Add a value: 3
Add a value: 4
Add a value: q
M0 M1 M2 M3
values 1 2 3 4
关于python - 数据框生成自己的列名,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43675254/