Calculadora de fracción de uso de codones
Esta calculadora mide qué proporción representa un codón entre todos los codones observados que codifican el mismo aminoácido dentro de un gen.
Ejecutar — gratis
Introduzca los conteos y seleccione el codón objetivo; obtendrá su fracción normalizada, porcentaje, aminoácido y grupo sinónimo completo usado como denominador. Acepta notación de ADN y ARN, combina filas duplicadas y asigna cero a los sinónimos ausentes. Así puede resumir el sesgo de codones de forma reproducible, sin hojas de cálculo ni tablas genéticas mantenidas a mano.
Qué significa la fracción de uso del codón
Muchos aminoácidos están codificados por más de un codón. La fracción de uso responde una pregunta precisa: entre los codones observados para un aminoácido en este gen, ¿qué proporción corresponde al codón elegido? Si un gen contiene 18 observaciones de TTT y 12 de TTC, ambos para fenilalanina, la fracción de TTT es 18 dividido entre 30, es decir, 0.6. El cálculo se limita al aminoácido y no a todos los codones del gen. Por ello describe la preferencia sinónima sin que la composición de otros aminoácidos altere el denominador. Un valor cercano a uno indica predominio del codón seleccionado; uno cercano a cero indica uso raro o nulo. El resultado resume la composición observada, pero no demuestra por sí solo selección, eficiencia de expresión ni significación estadística. Esas interpretaciones requieren un conjunto de referencia y contexto biológico. Use conteos obtenidos con el mismo marco de lectura y una definición coherente del gen.
Cómo preparar e interpretar la entrada
Introduzca cada codón observado con su conteo entero no negativo e indique después el codón objetivo. Se aceptan letras de ADN, como TTT, y de ARN, como UUU; la U se normaliza como T en la salida. No importan las mayúsculas ni los espacios exteriores. Si el mismo codón normalizado aparece varias veces, sus conteos se suman, algo útil para datos procedentes de regiones o lotes separados. No necesita enumerar todos los codones sinónimos. Los omitidos aparecen con conteo cero y siguen incluidos en el resultado, de modo que el denominador es transparente. Los conteos de otros aminoácidos son válidos, pero no afectan a la fracción elegida. La calculadora aplica el código genético estándar y rechaza un codón de parada como objetivo porque no codifica un aminoácido. También rechaza un grupo sinónimo con total cero, ya que una división por cero no representa uso. Revise la lista devuelta antes de comparar genes.
Cómo usar el resultado en análisis de sesgo
usage_fraction se expresa entre cero y uno, mientras que percentage presenta el mismo valor entre cero y cien. El conteo objetivo y el total sinónimo acompañan a la fracción para que los análisis posteriores conserven la evidencia del cociente. Esto importa porque fracciones idénticas pueden tener respaldo muy distinto: una observación de dos y quinientas de mil producen 0.5, pero no merecen automáticamente la misma confianza. En un análisis exploratorio, calcule la fracción de cada codón sinónimo y compare los patrones entre genes, condiciones, organismos o secuencias diseñadas. Mantenga constantes el código genético, la versión de anotación y las reglas de conteo. Como control, las fracciones de una familia sinónima deben sumar uno cuando parten de los mismos datos. El precio de la API es $0.002 por solicitud; el navegador ejecuta localmente el mismo cálculo determinista. No intervienen búsquedas en red, muestreo aleatorio ni frecuencias de referencia cambiantes.
Qué puede hacer con ella
Resumir un gen
Mida si un codón sinónimo predomina o apenas se utiliza dentro de un gen.
Comparar diseños génicos
Calcule fracciones equivalentes para secuencias codificantes nativas y rediseñadas con las mismas reglas.
Auditar una tabla de conteos
Compruebe el denominador sinónimo y los miembros con cero antes de un análisis más amplio.
Preguntas frecuentes
¿Cuál es la fórmula?
El conteo del codón elegido se divide entre la suma de los conteos de todos los codones que codifican el mismo aminoácido según el código estándar.
¿Puedo introducir codones de ARN?
Sí. La U se normaliza como T, por lo que UUU y TTT se consideran el mismo codón.
¿Qué ocurre si falta un codón sinónimo?
Se le asigna un conteo de cero. La salida enumera toda la familia sinónima empleada en el cálculo.
¿Se permiten filas duplicadas?
Sí. Los codones duplicados se normalizan y sus conteos enteros no negativos se suman.
¿Puede ser el objetivo un codón de parada?
No. La métrica relaciona un codón con su aminoácido, por lo que se rechazan las señales de parada.
¿Una fracción alta demuestra una expresión óptima?
No. Solo describe los conteos suministrados; las conclusiones sobre expresión y adaptación requieren referencias y contexto biológico.
¿Cuánto cuesta una solicitud de API?
El precio es $0.002 por solicitud. La página también puede ejecutar localmente el cálculo determinista en el navegador.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/bio/codon-usage-fraction \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"codon_counts":[{"codon":"TTT","count":18},{"codon":"TTC","count":12},{"codon":"ATG","count":7}],"target_codon":"TTT"}'const res = await fetch("https://api.kit.forhosting.com/bio/codon-usage-fraction", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"codon_counts": [
{
"codon": "TTT",
"count": 18
},
{
"codon": "TTC",
"count": 12
},
{
"codon": "ATG",
"count": 7
}
],
"target_codon": "TTT"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/bio/codon-usage-fraction",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"codon_counts": [
{
"codon": "TTT",
"count": 18
},
{
"codon": "TTC",
"count": 12
},
{
"codon": "ATG",
"count": 7
}
],
"target_codon": "TTT"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/bio/codon-usage-fraction", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"codon_counts":[{"codon":"TTT","count":18},{"codon":"TTC","count":12},{"codon":"ATG","count":7}],"target_codon":"TTT"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"codon_counts":[{"codon":"TTT","count":18},{"codon":"TTC","count":12},{"codon":"ATG","count":7}],"target_codon":"TTT"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/bio/codon-usage-fraction", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"codon_counts": [
{
"codon": "TTT",
"count": 18
},
{
"codon": "TTC",
"count": 12
},
{
"codon": "ATG",
"count": 7
}
],
"target_codon": "TTT"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "bio.codon_usage_fraction",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_items | 64 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |